我的EF模型生成的默认代码有错误

时间:2013-05-21 13:22:43

标签: c# asp.net entity-framework

这是一个noob问题,我实际上有点尴尬,自己无法弄明白,谁知道从LinqToSQL到EF的过渡将会充满这样的细微差别。

基本上我所做的只是

1>使用只有一个表的visual studio 2012 Server Explorer创建一个MusicStore SQL数据库。

2 - ;然后我添加了一个新的ADO.Net Entity Data Model edmx,并使用在步骤1中指向我的数据库的向导生成它。

这给了我一张MusicStore表的图表。现在,如果我将属性中的Code Generation Strategy更改为Default而不是none,那么这就是MusicStoreModel.Designer.cs中生成的代码。

然而,在 public MusicStoreEntities() : base("name=MusicStoreEntities", "MusicStoreEntities")

我得到了has some invalid arguments

我在这里缺少什么?一个参考?非常感谢任何帮助。

public partial class MusicStoreEntities : ObjectContext
{
    #region Constructors

    /// <summary>
    /// Initializes a new MusicStoreEntities object using the connection string 
    ///found    in the 'MusicStoreEntities' section of the application 
    ///configuration file.
    /// </summary>
    public MusicStoreEntities() : base("name=MusicStoreEntities", "MusicStoreEntities")
    {
        // Also getting a compilation error at the line below
        this.ContextOptions.LazyLoadingEnabled = true;
        OnContextCreated();
    }

1 个答案:

答案 0 :(得分:1)

这是设计的。有关Microsoft的官方职位,请参阅以下链接:Entity Framework 5 Code Generation Strategy set to DEFAULT causes errors on all properties of entities

  

(...)您看到这些编译错误的原因是因为您   重新启用遗留代码生成而不禁用新代码   基于T4的代码生成。这意味着有两组课程   正在生成。此页面提供有关如何还原的详细信息   ObjectContext代码生成 -   http://msdn.microsoft.com/en-us/data/jj556581