“SaveChanges()”方法出错

我正在使用Oracle数据库和ASP.net MVC4创建应用程序。 尽管代码中似乎没有问题,但调用SaveChanges()方法会导致此处显示错误:

在此处输入图像描述

此图像显示内部exception和相关详细信息

在此处输入图像描述

这是我为保存更改所做的实现

 if (ModelState.IsValid) { ModelState.Clear(); using (SSP_Entities database = new SSP_Entities()) { database.REQUEST_TAB.Add(c_modal.Request_tab); database.SaveChanges(); caseID = c_modal.Request_tab.CASE_ID; return RedirectToAction("NewEnv", cpe); } } 

我在视图中使用以下代码

   model.request_tab.ROWVERSION, new { @Value="date"}) %>  model.request_tab.CASE_ID, new { @Value=100}) %>  model.request_tab.REQUEST_BY, new { @Value="PUSNLK"}) %>  model.request_tab.REQUEST_ID, new { @Value=334}) %>  model.request_tab.REQUEST_TYPE, new { @Value="CPE"}) %>  model.request_tab.STATE, new { @Value="POSTED"}) %>  model.request_tab.COMMENTS, new { @Value="CPE Order"}) %> 

这是我正在使用的模型

 namespace CPEASPX.Models { using System; using System.Collections.Generic; public partial class REQUEST_TAB { public decimal REQUEST_ID { get; set; } public string REQUEST_BY { get; set; } public decimal CASE_ID { get; set; } public string STATE { get; set; } public string REQUEST_TYPE { get; set; } public string ROWVERSION { get; set; } public string COMMENTS { get; set; } } } 

我尝试了其他地方的一些解决方案。 首先,我通过添加更改了web.config文件中的

    

它的线条。 但问题还在继续。 我找不到客户端和服务器数据类型之间的任何不匹配。

请帮我解决问题。

在这里我将两个模型传递到一个视图。 我创建了以下组合模型(c_model是此类的对象)

 using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace CPEASPX.Models { public class CombineModal { public REQUEST_TAB request_tab = new REQUEST_TAB(); public REQUEST_TAB Request_tab { get { return request_tab; } set { request_tab = value; } } public CPE cpe = new CPE(); public CPE Cpe { get { return cpe; } set { cpe = value; } } } } 

这里它说我将CPE模型传递给它,但我只传递了包含CPE模态和Request_tab模态的组合模型。

这是我在视图中用来inheritance模态类的代码

 <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> 

我认为你需要分配每个属性而不是添加整个类。

 using (SSP_Entities database = new SSP_Entities()) { var requestTab = new RequestTab { REQUEST_ID = c_modal.Request_tab.REQUEST_ID, REQUEST_BY = c_modal.Request_tab.REQUEST_BY, CASE_ID = c_modal.Request_tab.CASE_ID, STATE = c_modal.Request_tab.STATE, REQUEST_TYPE = c_modal.Request_tab.REQUEST_TYPE, ROWVERSION = c_modal.Request_tab.ROWVERSION, COMMENTS = c_modal.Request_tab.COMMENTS }; database.REQUEST_TAB.Add(requestTab); database.SaveChanges(); }