Ich habe dies getan, um zusätzliche View Model Mappings in der Business-Klasse zu vermeiden. Beispiel:Welchen Leistungseinfluss hat das Schreiben von C# -Code in Sichten, die auch in Controller/Business geschrieben werden können?
public class PatientInfoBusiness
{
public List<PatientInfo> GetPatientInfo()
{
IPatientInfoService proxy = new VRFactory().GetPatientInfoServiceProxy();
var piData= proxy.GetPatientInfoSectionData();
//var patientInfoVM= new List<patientInfoVM>();
//piData.ForEach(a => patientInfoVM.Add(
// new patientInfoVM
// {
// AcknowledgedUserName = a.AcknowledgedUserName,
// Description = a.Description,
// PriorityCode = a.PriorityCode,
// Status = a.Status
// }
// )
// );
return piData;
}
}
Verschobene den kommentierten Code in dem oben genannten Geschäft auf Ansicht, Schleifen und in HTML angezeigt wird. Auf diese Weise besteht keine Notwendigkeit für patientInfoVM View Model. Aber ich überspringe die Business-Schicht insgesamt und binde die Entity von Service-Layer direkt in Sicht!
Dies wird in der Zukunft schwierig zu halten sein, aber ich persönlich denke, dies reduziert die Belastung, normalerweise werden die generierten Daten in den Viewbag für den Transport gelegt und wenn die Sicht erreicht wird, ist eine Art Umwandlung und Gießen erforderlich Kopf, es sei denn, stark typisierte Ansichten verwenden), muss ich auch die Antwort kennen –
Ansichten sollten nie Business-Logik, überhaupt, überhaupt enthalten. – Phill