gpt4 book ai didi

c# - 从 EF6 模型自动生成的 TT 文件呈现 Default parameter specifiers not permitted 错误

转载 作者:太空宇宙 更新时间:2023-11-03 10:25:01 25 4
gpt4 key购买 nike

带有 Update 5 的 Visual Studio 2013、指向 .NET Framework 4.5 的新 Web 应用程序项目 (WinForms)、C# 5 语言。我没有为该项目创建任何表单、任何加载项或任何 Nu-Get 包.我没有添加任何额外的引用资料。我创建了项目并使用 NuGet 添加了 Entity Framework 6.1.1。

免责声明:我是 Entity Framework 的新手。

我创建了一个非常简单的 SQL Server 2008R2 数据库,其中包含三个表。在该项目中,我添加了一个新的 ADO.Net 实体数据模型并将其指向数据库。该模型似乎正确生成,以及相应的.Context.tt、.designer.cs、.edmx.Diagram 和 .tt 文件。

但是,当我选择打开 .Context.tt 文件时,出现 37 个编译器错误,包括“不允许使用默认参数说明符”。在 UsingDirectives 函数上。所有其他错误都是基于自动生成的参数存在的语法错误。我到处搜索有这个问题的人,解决方案不是“.NET 必须是 4.0”,语言必须是 C# 5.0,因为项目是这样配置的。还有什么可能导致我的项目中出现这种情况?

提前感谢您的任何想法。

public string UsingDirectives(bool inHeader, bool includeCollections = true)
{
return inHeader == string.IsNullOrEmpty(_code.VsNamespaceSuggestion())
? string.Format(
CultureInfo.InvariantCulture,
"{0}using System;{1}" +
"{2}",
inHeader ? Environment.NewLine : "",
includeCollections ? (Environment.NewLine + "using System.Collections.Generic;") : "",
inHeader ? "" : Environment.NewLine)
: "";
}

最佳答案

我的问题的答案似乎是使用 DevArt T4 编辑器。根据培训视频的推荐,我安装了它以使文本模板更具可读性。我使用的是 1.0.9 版。我的理论是,此扩展使用 .NET 3.5 框架库进行语法检查,并在我的错误列表中创建了错误。然而,.tt 实际上一直在工作。我禁用了扩展程序,错误消失了,我继续前进。我希望这对其他可能在代码中遇到无法解释的错误的人有所帮助。

关于c# - 从 EF6 模型自动生成的 TT 文件呈现 Default parameter specifiers not permitted 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31952192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com