我想在Oracle SQL中使用Entity Framework中的Model First工作流。我可以使用Create Controller在db中创建新元素,但是当我想显示它时,我得到了一个不太详细的TTC错误消息:
TTC Error
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Exception: TTC Error
Source Error:
Line 18: public ActionResult Index()
Line 19: {
Line 20: return View(db.VALLALAT.ToList());
Line 21: }
Line 22:
Source File: ...\Controllers\VallalatController.cs Line: 20
字符串
我得到这个错误与每个模型,得到一个数据在SQL表
[Exception: TTC Error]
OracleInternal.TTC.TTCExecuteSql.ReceiveExecuteResponse(Accessor[]& defineAccessors, Accessor[] bindAccessors, Boolean bHasReturningParams, SQLMetaData& sqlMetaData, SqlStatementType statementType, Int64 noOfRowsFetchedLastTime, Int32 noOfRowsToFetch, Int32& noOfRowsFetched, Int64& queryId, Int32 longFetchSize, Int64 initialLOBFetchSize, Int64[] scnFromExecution, Boolean bAllInputBinds, Int32 arrayBindCount, DataUnmarshaller& dataUnmarshaller, MarshalBindParameterValueHelper& marshalBindParamsHelper, Int64[]& rowsAffectedByArrayBind, Boolean bDefineDone, Boolean& bMoreThanOneRowAffectedByDmlWithRetClause, List`1& implicitRSList, Boolean bLOBArrayFetchRequired) +3350
OracleInternal.ServiceObjects.OracleDataReaderImpl.FetchMoreRows(Int32 noOfRowsToFetch, Boolean fillReader, Boolean returnPSTypes) +1511
Oracle.ManagedDataAccess.Client.OracleDataReader.Read() +1365
System.Data.Entity.Core.Common.Internal.Materialization.Shaper`1.StoreRead() +36
[EntityCommandExecutionException: An error occurred while reading from the store provider's data reader. See the inner exception for details.]
System.Data.Entity.Core.Common.Internal.Materialization.Shaper`1.HandleReaderException(Exception e) +145
System.Data.Entity.Core.Common.Internal.Materialization.Shaper`1.StoreRead() +49
System.Data.Entity.Core.Common.Internal.Materialization.SimpleEnumerator.MoveNext() +41
System.Data.Entity.Internal.LazyEnumerator`1.MoveNext() +112
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +387
System.Linq.Enumerable.ToList(IEnumerable`1 source) +58
型
我的环境:
- Oracle数据库10 g企业版10.2.0.2.0 - 64 bi
- 实体框架6.0
- Oracle.ManagedDataAccess和EntityFramework 18.3
3条答案
按热度按时间wtzytmuj1#
太好了我找到答案了
Visual Studio为我生成了一个带有NCLOB属性的表。我将NCLOB改为VARCHAR2,现在终于可以正确显示列表了。
**更新:**不要忘记将ODP.NET驱动从18.3降级到12.2
exdqitrt2#
将ODP.NET驱动程序降级到12.2
b4qexyjb3#
正如Benzo所说的“将NCLOB更改为VARCHAR2”,它对我有效但不要将ODP.NET驱动程序从18.3降级为12.2(如果ODT是18.3)