是否有可能以某种方式移出属性用法中的字符串值声明?
具体来说我有:
[WebGet(UriTemplate = "/myResource/{id}")]
但我宁愿有类似的东西:
[WebGet(UriTemplate = AStaticDictionaryOrSomething["myResource"])]
原因是我想避免重复uri值而不必使用WebGet属性对类进行反射。所以我认为最简单的方法是在一个地方声明uri值,并从属性声明和其他地方引用它。
答案 0 :(得分:3)
在新类或某个地方声明您需要的字符串作为常量,并将它们用作属性参数
public class ResourceLibrary
{
public const string MyResource = "/myResource/{id}";
}
并像这样使用它:
[WebGet(UriTemplate = ResourceLibrary.MyResource)]