vb.net - 在 VB.NET 中使用 NHibernate 添加类型列长文本时插入或更新失败
问题描述
我将 Nhibernate 4 和 FluentNhibernate 2.0.3 与 db Microsoft Access 2000 一起使用。我无法将条目保存在数据库中,因为当我插入发送请求 HTTP POST 的Note字段时出现错误,例如:
{“注意”:“bla bla bla”}
注意:在数据库表中,“Note”列设置为“LONG TEXT”(不需要)
会不会是数据类型转换的问题?
这是堆栈跟踪:
NHibernate.Exceptions.GenericADOException: could not insert: [Domain.Destinatari#1773][SQL: INSERT INTO `Destinatari` (Note, IDDestinatario) VALUES (?, ?)] ---> System.Data.OleDb.OleDbException: Errore di sintassi nell'istruzione INSERT INTO.
in System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
in System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
in System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
in NHibernate.JetDriver.JetDbCommand.ExecuteNonQuery()
in NHibernate.AdoNet.AbstractBatcher.ExecuteNonQuery(IDbCommand cmd)
in NHibernate.AdoNet.NonBatchingBatcher.AddToBatch(IExpectation expectation)
in NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session)
--- Fine della traccia dello stack dell'eccezione interna ---
in NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session)
in NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Object obj, ISessionImplementor session)
in NHibernate.Action.EntityInsertAction.Execute()
in NHibernate.Engine.ActionQueue.Execute(IExecutable executable)
in NHibernate.Engine.ActionQueue.ExecuteActions(IList list)
in NHibernate.Engine.ActionQueue.ExecuteActions()
in NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session)
在我的映射代码下方:
Public Class DestinatariMap
Inherits ClassMap(Of Destinatari)
Public Sub New()
MyBase.New
LazyLoad()
Id(Function(x) x.IDDestinatario).GeneratedBy().Increment()
Map(Function(x) x.Note)
End Sub
End Class
这是我的域代码:
Public Class Destinatari
Private _ID_Destinatario As Integer
Private _Note As String
Public Overridable Property IDDestinatario() As Integer
Get
Return Me._ID_Destinatario
End Get
Set
Me._ID_Destinatario = Value
End Set
End Property
Public Overridable Property Note() As String
Get
Return Me._Note
End Get
Set
Me._Note = Value
End Set
End Property
End Class
谢谢
解决方案
推荐阅读
- debugging - 通过 Dbeaver 客户端进行远程调试
- ios - 如何在编码失败时中止 iOS Alamofire Multipart Upload
- swift - 在 SpriteKit SKPhysicsContactDelegate 中未检测到联系人
- android - python - 按文件名打开类似文件的对象
- php - 为什么方法不能返回布尔值?
- javascript - 函数的意外未定义返回值
- c# - 传入字典的模型项是 Razor mvc5 中的“System.Collections.Generic.List”类型
- reactjs - 反应滑动导航
- javascript - 如何在 Leaflet openPopup 中设置各种选项?
- python - 如何从 keras API 模型中获取 tf.gradients?