Tag: database first

Code First与Database First

我基于现有数据库创建了一个entity framework模型,然后从模型中生成了POCO实体。 我的web.config中的连接字符串不是entity framework,它只是标准连接字符串(它缺少CSDL,SSDL,MSL引用)。 我可以编译我的应用程序,但是当我运行时,我收到此错误: 如果在Code First模式下使用,使用T4模板为Database First和Model First开发生成的代码可能无法正常工作。 要继续使用Database First或Model First,请确保在执行应用程序的配置文件中指定了Entity Framework连接字符串。 要使用从Database First或Model First生成的这些类,使用Code First添加任何其他配置,使用属性或DbModelBuilder API,然后删除引发此exception的代码 我的问题是,在我的代码中,它实现了POCO来自自动生成,我怎样才能让它像Code First一样? 我不想在我的连接字符串中引用CSDL等。

枚举EF 5.0 – 数据库优先

如果我使用Database First,如何使我的上下文对象使用Entity Framework 5.0中的Enumfunction。

是否可以阻止EntityFramework 4覆盖自定义属性?

我首先使用EF 4数据库+ POCO。 因为EF没有简单的方法来声明传入的DateTimes是种类的UTC,所以我将属性从自动生成的文件移动到另一个文件中的部分类。 private DateTime _createdOn; public virtual System.DateTime CreatedOn { get { return _createdOn; } set { _createdOn = (value.Kind == DateTimeKind.Unspecified) ? _createdOn = DateTime.SpecifyKind(value, DateTimeKind.Utc) : value; } } 但是,现在每次更新模型时,都会在T4代中再次创建自动化属性。 当然这会导致以下编译错误:“类型’Foo’已经包含’CreatedOn’的定义”。 有没有办法告诉EF不生成该属性并让我自己处理它? 更新 谢谢大家的答案…… 我创建了一个具有不同名称的新自定义属性。 public virtual System.DateTime CreatedOnUtc { get { return (CreatedOn.Kind==DateTimeKind.Unspecified) ? DateTime.SpecifyKind(CreatedOn, DateTimeKind.Utc) : CreatedOn; } set […]