Foros del Web » Programación para mayores de 30 ;) » .NET »

Data Acces Layer + ConstraintException

Estas en el tema de Data Acces Layer + ConstraintException en el foro de .NET en Foros del Web. Hola, cree una capa de acceso a datos en mi proyecto web generando un archivo .xsd. El tema es que al tratar de obtener los ...
  #1 (permalink)  
Antiguo 08/01/2008, 01:15
 
Fecha de Ingreso: noviembre-2007
Mensajes: 12
Antigüedad: 16 años, 6 meses
Puntos: 0
Exclamación Data Acces Layer + ConstraintException

Hola, cree una capa de acceso a datos en mi proyecto web generando un archivo .xsd. El tema es que al tratar de obtener los datos usando los objetos generados, me da un error que aún no puedo encontrar la solución.
He probado colocar EnforceConstraints = False y nada, no hay caso. En si las consultas que estoy realizando son del tipo "Select".
Verifiqué las claves, las relaciones entre tablas, ejecuté el store procedure desde la base y con la opción visualizar datos de VS2005 y en ambos casos me trae datos sin ningún problema.

Las paginas son dos (maestro-detalle) y el error ocurre cuando voy al detalle

Espero que alguno pueda darme alguna pista.


[ConstraintException: No se pudieron habilitar las restricciones. Una o varias filas contienen valores que infringen las restricciones NON-NULL, UNIQUE o FOREIGN-KEY.]
System.Data.DataTable.EnableConstraints() +1808933
System.Data.DataTable.set_EnforceConstraints(Boole an value) +39
System.Data.DataTable.EndLoadData() +138
System.Data.Common.DataAdapter.FillFromReader(Data Set dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue) +218
System.Data.Common.DataAdapter.Fill(DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords) +318
System.Data.Common.DbDataAdapter.FillInternal(Data Set dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +221
System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior) +162
System.Data.Common.DbDataAdapter.Fill(DataTable dataTable) +107
LeyesTableAdapters.LeyTableAdapter.GetDataBy1(Null able`1 CodPaClave) +253
LeyBLL.GetDataBy1(Int32 CodPaClave) +48

[TargetInvocationException: Se produjo una excepción en el destino de la invocación.]
System.RuntimeMethodHandle._InvokeMethodFast(Objec t target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +0
System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +72
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +358
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +29
System.Web.UI.WebControls.ObjectDataSourceView.Inv okeMethod(ObjectDataSourceMethod method, Boolean disposeInstance, Object& instance) +482
System.Web.UI.WebControls.ObjectDataSourceView.Exe cuteSelect(DataSourceSelectArguments arguments) +2040
System.Web.UI.WebControls.BaseDataList.GetData() +53
System.Web.UI.WebControls.DataList.CreateControlHi erarchy(Boolean useDataSource) +284
System.Web.UI.WebControls.BaseDataList.OnDataBindi ng(EventArgs e) +56
System.Web.UI.WebControls.BaseDataList.DataBind() +72
System.Web.UI.WebControls.BaseDataList.EnsureDataB ound() +55
System.Web.UI.WebControls.BaseDataList.CreateChild Controls() +63
System.Web.UI.Control.EnsureChildControls() +87
System.Web.UI.Control.PreRenderRecursiveInternal() +41
System.Web.UI.Control.PreRenderRecursiveInternal() +161
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1360
  #2 (permalink)  
Antiguo 09/01/2008, 23:15
 
Fecha de Ingreso: noviembre-2007
Mensajes: 12
Antigüedad: 16 años, 6 meses
Puntos: 0
Pregunta Re: Data Acces Layer + ConstraintException

Leí en: http://www.microsoft.com/spanish/msdn/articulos/archivo/261205/voices/newdtastvs05.mspx
una parte que dice "Expanda el nodo Tablas y seleccione las tablas Orders y Order Details. Se utilizarán todas las columnas de las tablas pero sólo podrán seleccionarse las columnas necesarias para la aplicación."
Pues me dispuse a "quitar" las columnas que no voy a utilizar en las tablas del dataset creado en la aplicación y funcionó.
El tema es que no creo que sea una solución elegante, uds que dicen?
Supongamos que desee realizar operaciones de insert, update y delete nuevamente entraría en el circulo del problema que describo al principio.
Bueno, espero sus comentarios.

muchas gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:34.