T4 テンプレート ファイルのプロパティの Nullable 状態を取得するメソッドを書きたいです。
TTファイルに書きましたが、T4ファイルでは異なります
bool IsRequired(object property) {
bool result=false;
? ? ? ? ? ? ? ? ? ? ? ?
return result;
}
List<ModelProperty> GetEligibleProperties(EnvDTE.CodeType typeInfo, bool includeUnbindableProperties) {
List<ModelProperty> results = new List<ModelProperty>();
if (typeInfo != null) {
foreach (var prop in typeInfo.VisibleMembers().OfType<EnvDTE.CodeProperty>()) {
if (prop.IsReadable() && !prop.HasIndexParameters() && (includeUnbindableProperties || IsBindableType(prop.Type))) {
results.Add(new ModelProperty {
Name = prop.Name,
ValueExpression = "Model." + prop.Name,
Type = prop.Type,
IsPrimaryKey = Model.PrimaryKeyName == prop.Name,
IsForeignKey = ParentRelations.Any(x => x.RelationProperty == prop),
IsReadOnly = !prop.IsWriteable(),
// I Added this >>
IsRequired = IsRequired(prop)
});
}
}
}
どうやって?