Web uygulamam için veri katmanı görevi gören 'MyProject.Data' adlı bir projede 'Article' adlı bir sınıfım var.
Verileri görüntülemek / düzenlemek için web tabanlı bir yönetim sistemi olan 'MyProject.Admin' adlı ayrı bir projem var ve ASP.NET Dinamik Verileri kullanılarak oluşturulmuş.
Temel olarak Makale sınıfını kısmi bir sınıf kullanarak genişletmek istiyorum, böylece özelliklerinden birini bir "UIHint" genişletici ile genişletebilirim, bu da normal çok satırlı metin kutusunu FCKEdit denetimiyle değiştirmeme izin verir.
Kısmi sınıfım ve genişleticim şöyle görünür:
[MetadataType(typeof(ProjectMetaData))]
public partial class Project
{
}
public class ProjectMetaData
{
[UIHint("FCKeditor")]
public object ItemDetails { get; set; }
}
Şimdi, eğer kısmi sınıf orijinal kısmi sınıfla aynı projedeyse, yani MyProject.Data projesindeyse bunların hepsi iyi çalışıyor.
Ancak kullanıcı arayüzü davranışı Veri katmanında değil, Yönetici katmanında yer almalıdır. Bu yüzden bu sınıfı MyProject.Admin'e taşımak istiyorum.
Ancak, bunu yaparsam işlevsellik kaybolur.
Temel sorum şu: Ayrı projelerde 2 kısmi sınıfım olabilir, ancak her ikisi de aynı "sınıfa" atıfta bulunur mu?
Değilse, veri katmanı mantığını UI mantığıyla karıştırmadan yapmaya çalıştığım şeyi başarmanın bir yolu var mı?
MetadataType
Modelleri daha çok ViewModels gibi yapar.