Я пытаюсь создать простой шаблон C# для некоторых материалов EF 6.0. Я создал шаблон в том же проекте, который определяет все объекты Entity Framework. Тем не менее, я, похоже, не могу использовать некоторые из типов, которые можно найти просто отлично в генераторе Entity, в частности, TypeMapper
.В какой сборке используется System.Data.Entity.ModelConfiguration.Mappers.TypeMapper Defined?
Вот вершина моего Entity файла генератор T4:
<#@ template language="C#" debug="false" hostspecific="true"#>
<#@ include file="EF.Utility.CS.ttinclude"#>
<#@ output extension=".cs"#>
<#
const string inputFile = @"EpicCloudDB.edmx";
#>
<#@ include file="EdmxEnumFixer.t4" #>
<#
var textTransform = DynamicTextTransformation.Create(this);
var code = new CodeGenerationTools(this);
var ef = new MetadataTools(this);
var typeMapper = new TypeMapper(code, ef, textTransform.Errors);
var fileManager = EntityFrameworkTemplateFileManager.Create(this);
var itemCollection = new EdmMetadataLoader(textTransform.Host, textTransform.Errors).CreateEdmItemCollection(inputFile);
var codeStringGenerator = new CodeStringGenerator(code, typeMapper, ef);
#>
Ничего сумасшедшего здесь происходит. Тем не менее, если я создаю шаблон и пасты, непосредственно в него (тот же проект) это не удается найти следующие типы:
- TypeMapper
- CodeStringGenerator
- EdmMetadataLoader
Я нуждаюсь только TypeMapper, но я не понимаю, почему один и тот же код шаблона не работает в новом шаблоне, но отлично работает в EF-файле по умолчанию.
Эти классы нелегко найти документацию. Я полагаю, могу ли я найти, какая сборка определяет TypeMapper
. Я могу добавить ссылку вручную и беспокоиться об общей странности позже, но это оказалось сложнее, чем я ожидал.
Итак, как я могу импортировать этот тип в свой шаблон? Я прохожу через источник EF 6, пока жду ответа.
Вы не смотрели в EF.Utility.CS.ttinclude? Должно быть определено там. – Will
@Will: Я сделал, это не так. Если бы это был код, он работал бы. И, как я уже сказал, вы можете скопировать тот же самый точный шаблон кода выше, который работает в генераторе сущности EF, в новый шаблон, и он терпит неудачу. –
@Will: [Вот определение] (https://github.com/mono/entityframework/blob/master/src/EntityFramework/ModelConfiguration/Mappers/TypeMapper.cs) –