해결책을 찾았습니다.
DbDatabase.DefaultConnectionFactory = new
SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
여기에 전체 샘플은 다음과 같습니다 : 중요한 것은이 코드 라인
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Proto
{
using System.Data;
using System.Data.Entity;
using System.Data.Entity.Database;
using System.Data.SqlServerCe;
using System.ComponentModel.DataAnnotations;
class Program
{
static void Main(string[] args)
{
DbDatabase.DefaultConnectionFactory = new
SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
DbDatabase.SetInitializer(
new DropCreateDatabaseIfModelChanges<ProtoCatalog>()
);
using (var db = new ProtoCatalog())
{
var user = new User
{
Name = "bob",
Password = "123",
Creation = DateTime.Now,
PrimaryEmailAddress = "[email protected]"
};
db.Users.Add(user);
db.SaveChanges();
Console.ReadKey();
}
}
}
public class ProtoCatalog : DbContext
{
public DbSet<User> Users { get; set; }
}
public class User
{
[Key, StringLength(50)]
public string Name { get; set; }
[Required, StringLength(100)]
public string Password { get; set; }
[Required, StringLength(320)]
public string PrimaryEmailAddress { get; set; }
[StringLength(320)]
public string SecondaryEmailAddress { get; set; }
[Required]
public DateTime Creation { get; set; }
public bool Active { get; set; }
}
}
이 API는 아마하지만 EF 코드 - 먼저 CTP 5 RTM 사이에 변경됩니다, 그러나 이것은 어떻게하는지입니다
지금.
나는 작은 blog post을 만들었습니다.
감사합니다. 나는 그것들을 점검 할 것이다. –