如何在C#中使用静态数据设置属性名称属性:
SiteManager
错误:属性参数必须是常量表达式typeof 表达式或数组创建表达式的属性参数
我可以将const
设为SiteManager
字段,但我无法在静态构造函数中设置<div class="uwrap" id="content">
<div class="upage vertical-col left panel" id="mainpage" data-header="af-header-1" data-footer="af-footer-4">
<a class="button widget uib_w_4 d-margins" data-uib="app_framework/button" data-ver="1" id="switch">Button</a>
</div>
<div class="upage vertical-col left panel" id="timepage" data-header="af-header-2" data-footer="af-footer-5">
<a class="button widget uib_w_7 d-margins" data-uib="app_framework/button" data-ver="1" id="back">Button</a>
</div>
</div>
<footer class="wrap-element uib_w_6" data-uib="app_framework/footer" data-ver="1" id="af-footer-5">
<a class="widget uib_w_8 d-margins icon check" data-uib="app_framework/button" data-ver="1">Button</a>
</footer>
<footer class="wrap-element uib_w_2" data-uib="app_framework/footer" data-ver="1" id="af-footer-4">
<a class="widget uib_w_3 d-margins icon home" data-uib="app_framework/button" data-ver="1">Button</a>
<a class="widget uib_w_5 d-margins icon tv" data-uib="app_framework/button" data-ver="1">Button</a>
</footer>
的值。如何解决这个问题?
答案 0 :(得分:5)
基本上你不能。属性值直接嵌入编译的程序集中 - 它们无法在执行时确定。如果您需要仅在执行时可用的信息,您将需要一种不同的方法,该方法不要求信息出现在属性值中。
(嗯,你可以使用相关的属性数据动态生成类型,但这可能比任何其他方法更难......)