C# 如何在C中动态生成类#
我有名为Elements的json数据,它有一个字段属性。现在我想在类中添加这些属性,该类需要动态生成 下面是我的json数据的结构C# 如何在C中动态生成类#,c#,visual-studio-2017,C#,Visual Studio 2017,我有名为Elements的json数据,它有一个字段属性。现在我想在类中添加这些属性,该类需要动态生成 下面是我的json数据的结构 "Elements": [ { "$type": "PCL.DatePicker, PCL", "Type": "DatePicker", "SelectedDate": "2017-02-23T00:00:00", "LabelText": "Date:",
"Elements": [
{
"$type": "PCL.DatePicker, PCL",
"Type": "DatePicker",
"SelectedDate": "2017-02-23T00:00:00",
"LabelText": "Date:",
"Property": "Date1",
"Visibile": true
},
{
"$type": "PCL.FormEntryField, PCL",
"Type": "Entry",
"Text": "",
"LabelText": "Full Name:",
"Property": "FullName",
"Visibile": true
},
{
"$type": "PCL.Picker, PCL",
"Type": "Picker",
"DefaultIndex": 0,
"Values": [ "English", "Hindi", "French", "Chinese", "Arabi" ],
"LabelText": "Language",
"Property": "Language",
"Visibile": true
},
{
"$type": "PCL.FormSwitch, PCL",
"Type": "Switch",
"DefaultValue": true,
"Value": false,
"Text": null,
"Property": "Happy",
"LabelText": "Are You Happy?",
"Visibile": true
},
{
"$type": "PCL.TimePicker, PCL",
"Type": "TimePicker",
"SelectedTime": "12:30:00",
"LabelText": "Time:",
"Property": "TIme",
"Visibile": true
}
]
可以这样做吗?您当然可以使用T4模板来读取JSON文件并写出c#类结构和属性 这是假设您将在设计时生成,类似于使用edmx文件生成实体的方式 有关T4模板的基础知识,请参阅下面的Microsoft资源
msdn.microsoft.com/en us/library/bb126445.aspx那么您已经运行了一些C#代码,并且希望在运行时创建一个新类以放入单独的DLL中?这似乎有点像X Y'Y'me@MichaelRandall-我同意。我肯定在运行时生成并使用了类,但从未永久存储它们。有一个很好的理由这么做,因为以前的决定不可能改变,但我还是不想改变。了解这里需要解决的实际问题是非常有用的,因为一个经过充分分析和研究以得出需要此解决方案的结论的问题,似乎不太可能会留下这样的问题。@MichaelRandall没有证据就不是问题的证据Absence@MickyD 对于美国东部标准时间下午3:31,这是一个深刻的陈述,但是你得到了点扫描。请解释我如何使用T4模板生成C#类结构,并且proerties解释了基本原理。