Wie kann ich Datenanmerkungen am besten zur Validierung verwenden, wenn ich eine erste Entity Framework (v5.0) -Datenbank verwende?Datenanmerkungen mit Entity Framework 5.0 (erste Datenbank)
Dies ist mein Teilklasse von Entity Framework erstellt:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System.ComponentModel.DataAnnotations;
namespace ACore
{
using System;
using System.Collections.Generic;
public partial class PayrollMarkup_State
{
[UIHint("StatesEditor")] // <-- I added this line but it will be overwritten
public string State { get; set; }
public Nullable<float> MaintenancePercentage { get; set; }
public Nullable<float> OfficePercentage { get; set; }
}
}
habe ich versucht, dies ohne Erfolg ....
Entity Framework-Datei generiert:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System.ComponentModel.DataAnnotations;
namespace ACore
{
using System;
using System.Collections.Generic;
public partial class PayrollMarkup_State
{
public string State { get; set; }
public Nullable<float> MaintenancePercentage { get; set; }
public Nullable<float> OfficePercentage { get; set; }
}
}
'PayrollMarkup_State.cs'
Ich habe dann diese Datei in einem anderen Verzeichnis erstellt: 'PayrollMarkup_state.cs'
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
namespace ACore.Models
{
[MetadataType(typeof(PayrollMarkupMetadata))]
public partial class PayrollMarkup_State
{
}
public class PayrollMarkupMetadata
{
[UIHint("StatesEditor")]
public string State; // Has to have the same type and name as your model
}
}
Funktioniert das wirklich, wenn Sie erklären ein Feld anstelle einer Eigenschaft in Ihrer Metadatenklasse? – JYL
@JYL Ja, es sieht nicht aus, ob es ein Feld oder eine Eigenschaft ist, es ist nur ein indirekter Mechanismus. "Finden Sie dieses Ding in dieser anderen Klasse mit diesem Typ und Namen und wenden Sie diese Attribute darauf an." – GalacticCowboy
Ok danke! +1. – JYL