1

这是一个菜鸟问题,实际上我有点不好意思自己无法弄清楚,谁知道从 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();
    }
4

1 回答 1

1

这是设计使然。微软官方立场请参考以下链接:Entity Framework 5 Code Generation Strategy set to DEFAULT cause errors on all properties of entity

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

于 2013-05-21T13:56:40.070 回答