【发布时间】:2023-03-22 15:55:01
【问题描述】:
我正在开发一个消息传递应用程序,该应用程序需要将一些 C# 类型“对象”的参数作为消息的一部分发送。我的后备解决方案是仅序列化对象并将其作为字符串存储在数据库中,并在必要时对其进行反序列化。
我的问题是,使用 NHibernate 在 SQL 中存储“对象”类型的实例的一般策略是什么?
【问题讨论】:
标签: c# nhibernate orm fluent-nhibernate
我正在开发一个消息传递应用程序,该应用程序需要将一些 C# 类型“对象”的参数作为消息的一部分发送。我的后备解决方案是仅序列化对象并将其作为字符串存储在数据库中,并在必要时对其进行反序列化。
我的问题是,使用 NHibernate 在 SQL 中存储“对象”类型的实例的一般策略是什么?
【问题讨论】:
标签: c# nhibernate orm fluent-nhibernate
写一个custom IUserType 来处理您的序列化问题。它可以获取您的对象并以您喜欢的任何格式保存它,例如SerializedObjectType nvarchar(max) + SerializedObjectJson nvarchar(max).
请参阅MoneyUserType from NCommon.NHibernate,它保留两列,金额和货币。
【讨论】: