データベースの例からデータをロードする DisplayText を使用しています: コードの再開:
public class AtributosInModels : DisplayNameAttribute
{
string displayName;
private static int lenght;
public static int Lenght
{
get { return lenght; }
set { lenght = value; }
}
vw_UsuarioPerfilAtributoRepository vw_usuarioPerfilAtributoRepository = new vw_UsuarioPerfilAtributoRepository();
public AtributosInModels(string key)
{
_key = key;
}
public override string DisplayName
{
get
{
Func<vw_UsuarioPerfilAtributo, bool> expressionPerfil = Perf => Perf.NomeAtributo == _key;
var entity = vw_usuarioPerfilAtributoRepository.GetSingle(expressionPerfil);
if (entity.Tamanho!=null)
lenght = entity.Tamanho.Value;
try { displayName = entity.NomeLabel; }
catch (Exception) { displayName = null; }
return string.IsNullOrEmpty(_key) ? "" : displayName;
}
}
public string _key { get; set; }
}
}
[AtributosInModels("NomeUsuario")]
[MaxLength(AtributosInModels.Lenght)]
public string NomeUsuario { get; set; }
コードが乱雑な場合は、いっぱい入れます**
今、データベースからLenght、DataType、Permission、DisplayFormatをロードしたい。しかし、モデルのクラスは変数を操作できません。静的メソッドを使用しようとしていました
[MaxLength(AtributosInModels.Lenght)]
エラー 5 属性引数は、定数式、typeof 式、または属性パラメーター型の配列作成式でなければなりません
失敗した。