1

プロパティの引数として静的リソースを使用する方法はありますか?

これを想像してください

[IsSecured("Secured","Here must be a description of the class")]
public class Secured
{
} 

2 番目の引数を静的リソースにする必要があります。このようなもの

[IsSecured("Secured",ClassNames.SecuredClassNameDescription)]
public class Secured
{
    [Allowed("Secured",ClassNames.SecuredMymethodDescription)]
    public string Mymethod()
    {
    } 
} 

ClassNamesは、およびテキスト リソースを含む.resxファイルです。SecuredClassNameDescriptionSecuredMymethodDescription

4

1 に答える 1

1

これらは属性であり、プロパティではありません。
属性パラメーターは、コンパイル時の定数でなければなりません。

ただし、コンストラクターでリソース名を取り(型の安全性を失います)、リソース値を基本コンストラクターに渡す独自の継承属性を作成できます。

public sealed class AllowedByResourceAttribute : AllowedAttribute {
    public AllowedByResourceAttribute(string name, string resourceName) : base(name, GetResource(resourceName)) { }
}
于 2013-10-29T20:16:40.433 に答える