T4编译转换:找不到类型或命名空间名称“TypeMapper”

时间:2018-03-06 19:50:04

标签: c# .net entity-framework t4

我已经失去了几天谷歌搜索并试图弄明白。

以下是代码:

<#@ include file="EF.Utility.CS.ttinclude"#>

<#@ assembly name="System.Text.RegularExpressions"#>
<#@ import namespace="System.Text.RegularExpressions" #>

<#@ output extension=".txt" #>

Edmx fixer template
Started at: <#= DateTime.Now #>
<#  

    const string inputFile = @"DataModel.edmx";
    var textTransform = DynamicTextTransformation.Create(this);
    var edmx = XElement.Load(textTransform.Host.ResolvePath(inputFile), LoadOptions.SetBaseUri | LoadOptions.SetLineInfo);
    var code = new CodeGenerationTools(this);
    var ef = new MetadataTools(this);
    MetadataLoader loader = new MetadataLoader(this);
   var typeMapper = new TypeMapper(code, ef, textTransform.Errors);
    var itemCollection = loader.CreateEdmItemCollection(inputFile);
  var coll = itemCollection.GetItems<EntityType>();
   var navigationProperties = typeMapper.GetItemsToGenerate<EntityType>(itemCollection).SelectMany(item => typeMapper.GetNavigationProperties(item));
     Fix(navigationProperties, edmx);
    edmx.Save(textTransform.Host.ResolvePath(inputFile));
#>

(我已经实现了Fix方法,只是没有在这里复制,因为没有必要)。

我一直得到的错误是TypeMapper不存在。我包括了EF.Utility.CS.ttinclude并尝试了很多其他的东西,但错误一直出现。 有没有人有同样的问题?

P.S。我正在使用EF 6.1.3。和DB第一种方法。

谢谢!

0 个答案:

没有答案