gpt4 book ai didi

运行时的 C# 动态类?

转载 作者:太空宇宙 更新时间:2023-11-03 22:25:58 26 4
gpt4 key购买 nike

首先,我不是在谈论 C# 4.0 中新的“动态”关键字。 :) 我相信我需要走另一条路......

我想要一个类,在代码/设计时,它是从一组 XML 文件或文件/文件夹组合等生成的。我可以通过更改外部源来做任何事情。

这可以用 C# 实现吗?我知道有可能在设计时编译一些隐藏的类名或其他东西(即每个项目的内置属性)。

有没有更简单的方法来做到这一点?几乎像一个动态枚举?这是我正在尝试做的事情:

public static class MenuItems
{
}

在设计时,我希望根据 XML 文件定义添加属性(或方法/字段,如果这样更容易的话)。喜欢:

<MenuItems>
<Item>Homepage</Item>
<Item>Portfolio</Item>
<Item>About</Item>
<Item>Contact</Item>
</MenuItem>

然后,在设计器中编码时,我将拥有如下智能感知:

if (page.ToString == MenuItems.Homepage)...
if (page.ToString == MenuItems.Portfolio)...

注意到属性是如何在 XML 中定义的,并在设计时添加到类中了吗?

提前致谢!

最佳答案

您可以使用 T4 Templates生成源代码。它得到 Microsoft 的大力支持,并用于多个项目,包括 ASP.NET MVC,以及即将推出的 ADO.NET Entity Framework 。

关于运行时的 C# 动态类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1408658/

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