Я исследую Nhibernate, jquery и WCF одновременно для внутреннего проекта, и мне было интересно, почему у меня не может быть "чистых" классов данных.
Из того, что я прочитал, очень хороший момент в мире nhibernate заключается в том, что мой бизнес-класс не будет связан с фреймворком.
У меня не будет
<SaveInTable("Thingie")> _
Public Class Thingie
<ColumnName("ThingieId")> _
Public Property Id as Integer
' accessors
End Class
а что-то вроде
Public Class Thingie
Public Property Id as Integer
' etc
А потом
Public Class ThingieMapping
Inherits ClassMap(Of Thingie)
' etc, omitted for brevity's sake
Что я не понимаю, так это то, что если я хочу перечислить Thingie s на веб-странице с jQuery , и если я хочу использовать веб-сервисы WCF с jquery (это выглядит как текущая тенденция из того, что я видел в различных уроках), мне приходится добавлять атрибуты DataContract и DataMember в мой класс Thingie .
С другой стороны, классические веб-сервисы ASMX не будут беспокоить меня и позволят мне получить класс Thingie , не беспокоясь о добавлении атрибутов.
У меня такое ощущение, что мне не хватает части картины здесь; кажется логичным попытаться сохранить класс Thingie в основном независимым, но я пока не нашел примеров.
Итак, я должен отказаться от всех надежд и придерживаться классических веб-сервисов, или есть способ получить мой торт WCF и съесть его тоже?