我试图将 Umbraco Forms (Umbraco v7.5.3)保存到我自己的数据源。 我遵循了这个指南:http://www.nibble.be/?p=84
它似乎有效。我可以连接并生成基于表格的表单。哪个好。
我使用连接字符串添加新的表单数据源:
Provider=SQLNCLI11;Server=(localdb)\MSSQLLocalDB;Database=test;Integrated Security=SSPI;
我的表格如下:
Id(PK)属性配置为标识
我选择了一些我想在表单中使用的字段:
我选择应该使用的数据类型:
我有点困惑为什么Id
字段在那里。我没有选择它,我所遵循的指南也没有这个字段:/?
它为我生成了这个表单:
但是当我尝试提交表单数据时,我收到以下错误。哪个不好。
' /'中的服务器错误应用
对象引用未设置为对象的实例。
描述:执行期间发生了未处理的异常 当前的网络请求。请查看堆栈跟踪了解更多信息 有关错误的信息以及它在代码中的起源。
异常详细信息:System.NullReferenceException:不是对象引用 设置为对象的实例。
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[NullReferenceException:对象引用未设置为的实例 对象。]
Umbraco.Forms.Core.Providers.DatasourceTypes.MsSql.InsertRecord(实录 记录)+1750
Umbraco.Forms.Web.Services.RecordService.storeRecord(记录记录, 表格形式)+1574
Umbraco.Forms.Web.Services.RecordService.Approve(记录记录,表格 form)+343 Umbraco.Forms.Web.Services.RecordService.Submit(Record 记录,表格形式)+565
Umbraco.Forms.Web.Controllers.UmbracoFormsController.SubmitForm(表 form,FormViewModel模型,Dictionary2 state, ControllerContext context) +2245
2 state)+205
Umbraco.Forms.Web.Controllers.UmbracoFormsController.GoForward(Form form, FormViewModel model, Dictionary
Umbraco.Forms.Web.Controllers.UmbracoFormsController.HandleForm(FormViewModel model,Boolean captchaIsValid)+785 lambda_method(Closure, ControllerBase,Object [])+ 143 3 System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller,Object []参数)+14
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary2 parameters) +157
2 参数)+27
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
System.Web.Mvc.Async.AsyncControllerActionInvoker.b__39(IAsyncResult的 asyncResult,ActionInvocation innerInvokeState)+22
System.Web.Mvc.Async.WrappedAsyncResult2.CallEndDelegate(IAsyncResult asyncResult) +29
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult的 asyncResult)+32
System.Web.Mvc.Async.AsyncInvocationWithFilters.b__3d() +50 System.Web.Mvc.Async。<> c__DisplayClass46.b__3f() +225 System.Web.Mvc.Async。<> c__DisplayClass46.b__3f() +225 System.Web.Mvc.Async。<> c__DisplayClass46.b__3f() +225 System.Web.Mvc.Async。<> c__DisplayClass46.b__3f() +225 System.Web.Mvc.Async。<> c__DisplayClass46.b__3f() +225 System.Web.Mvc.Async。<> c__DisplayClass33.b__32(IAsyncResult asyncResult)+10
System.Web.Mvc.Async.WrappedAsyncResult1.CallEndDelegate(IAsyncResult asyncResult) +10
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult的 asyncResult)+34
System.Web.Mvc.Async<> c__DisplayClass2b.b__1c() +26 System.Web.Mvc.Async。<> c__DisplayClass21.b__1e(IAsyncResult) asyncResult)+100
System.Web.Mvc.Async.WrappedAsyncResult1.CallEndDelegate(IAsyncResult asyncResult) +10
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult的 asyncResult)+27
System.Web.Mvc.Controller.b__1d(IAsyncResult的 asyncResult,ExecuteCoreState innerState)+13
System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +29
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)+36 System.Web.Mvc.Controller.b__15(IAsyncResult的 asyncResult,控制器控制器)+12
System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +22
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)+26
System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult的 asyncResult)+10
System.Web.Mvc.MvcHandler.b__5(IAsyncResult的 asyncResult,ProcessRequestState innerState)+21
System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +29
1.End()+49
System.Web.Mvc.Async.WrappedAsyncResultBase
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult) 结果)+9
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9765121 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)+155
Id
字段会添加到我的表单中?Null Reference
?答案 0 :(得分:1)
我能够通过升级Umbraco Forms的版本来解决问题。我想这是Umbraco v7.4.3和Umbraco Forms v4.3.2的已知问题,这是我正在使用的版本。