首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有什么方法可以为ModelMetadata.Properties获取ModelMetadata.RelatedEntities吗?

有什么方法可以为ModelMetadata.Properties获取ModelMetadata.RelatedEntities吗?
EN

Stack Overflow用户
提问于 2015-04-30 21:48:00
回答 1查看 1.2K关注 0票数 5

我一直在阅读Microsoft.AspNet.Scaffolding.Core.Metadata命名空间;但是,我对这个对象模型并不熟悉,也许我忽略了一些东西。我正在创建T4文本模板,并希望自动生成相关模型数据的输出。类似于ModelMetadata.RelatedModelMetadata.ModelMetadata.PropertyMetadata的东西。

代码语言:javascript
复制
foreach (PropertyMetadata property in ModelMetadata.Properties) {
  if (property.IsAssociation) {
    RelatedModelMetadata relatedModel = property.RelatedModel
    foreach (PropertyMetadata relatedProperty in relatedModel.Properties) {
      // Do Something
    }
  }
}

当然,这不能工作,因为RelatedModelMetadata对象没有属性集合;实际上,所有的RelatedModelMetadata属性都是字符串。

任何技巧都是你可能会被欣赏的窍门。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2016-04-18 16:51:34

在视图生成模板中,可以访问Model.ModelMetadata.Navigations属性。这“类似”RelatedModelMetadata..。我在引语中重复“相似”..。相似之处可能更多的是意图,而不是功能。

代码语言:javascript
复制
@foreach (var property in Model.ModelMetadata.Navigations)
{
   //I do what I want!
}

每个property都为您提供以下属性

  • AssociationPropertyName : string
  • DisplayPropertyName : string
  • EntitySetName : string
  • ForeignKeyPropertyNames :字符串数组
  • PrimaryKeyNames :字符串数组
  • ShortTypeName : string
  • TypeName : string
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29978398

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档