gpt4 book ai didi

c# - 有没有办法为 ModelMetadata.RelatedEntities 获取 ModelMetadata.Properties?

转载 作者:行者123 更新时间:2023-11-30 13:06:49 25 4
gpt4 key购买 nike

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

foreach (PropertyMetadata property in ModelMetadata.Properties) {
if (property.IsAssociation) {
RelatedModelMetadata relatedModel = property.RelatedModel
foreach (PropertyMetadata relatedProperty in relatedModel.Properties) {
// Do Something
}
}
}

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

任何提示都是技巧,您可能会感激不尽。

谢谢!

最佳答案

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

@foreach (var property in Model.ModelMetadata.Navigations)
{
//I do what I want!
}

每个 property 都给你属性

  • 关联属性名称:字符串
  • 显示属性名称:字符串
  • 实体集名称:字符串
  • ForeignKeyPropertyNames:字符串数组
  • PrimaryKeyNames :字符串数组
  • 短类型名称:字符串
  • 类型名称:字符串

关于c# - 有没有办法为 ModelMetadata.RelatedEntities 获取 ModelMetadata.Properties?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29978398/

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