Hola Leo

Parece mentira que a esta altura de la informática y después de muchos años
de ORMs varios, todavía en MS hagan algunas cosas del paleolítico inferior.

En LinQToSQL no se pueden transferir objetos entre diferentes DataContexts,
solo pueden ser usados en un solo DataContext.
Esto es una restricción de diseño. O sea que si estás pensando en pasar
objetos creados con el LinQToSQL entre capas no se puede. (Alguien en el
equipo de ADO.NET debe estar papando moscas...).
Tampoco es recomentable que uses un solo DataContext en una variable Static
porque no es Thread Safe, con lo cual, si tu aplicación es ASP.NET no hay
mayor problema porque ahí se utiliza Unit of Work, o sea, abris y cerrar
solamente en una pagina (ni se te ocurra mantener eso en una variable de
Session).

En el caso de una aplicación WinForm y si tu ambiente es controlado, podrías
tener un solo DataContext para toda tu aplicación.

Si tu ambiente es otro, jua!! Que alguien te ayude.


Saludos!!
  

Daniel Laco | Business Development Manager | Microsoft MVP | VEMN S.A. 
Pje. Villalonga 821  2° piso - Ituzaingó - Buenos Aires | TE: 54 11.
4624.6012 | Cel: 15.5737.9201 


-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Jose
Cardaropoli
Sent: Lunes, 16 de Junio de 2008 01:57 p.m.
To: [email protected]
Subject: [puntonet] DataContext

Creo que ese era el error, investigando un poco, me contaron que debía abrir

un solo datacontex en un lugar que pudieran referenciar todos los proyectos 
de la solución.

Me parecía que era mejor no tenerlo todo el tiempo en memoria y abrirlo cada

vez que lo necesitaba luego cerrarlo, como si fuera una conexión a la base 
de datos.

Estoy haciendo mis primeros pasos y hay que acomodar la cabeza a la nueva 
herramienta.

Gracias




----- Original Message ----- 
From: "Leonardo Micheloni" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, June 13, 2008 3:39 PM
Subject: [puntonet] DataContext


Hola,
 No entiendo bien, por qué usás dos DataContext?

2008/6/12 Jose Cardaropoli <[EMAIL PROTECTED]>:
> Hola a todos,
>
> Estoy generando una aplicación con linq to sql, para actualizar mis tablas
> genero un DataC ontext pero al mismo solo puedo hacer una attach en el
> Namespace donde lo he creado.
>
> En otro lugar de la aplicación cuando quiero crear otro no puedo porqu me
> dice que ya tiene un attach, en interner lei que había en alguna versión 
> un
> "desattach".
>
> Yo uso visual studio 2008 y no lo tengo como puedo solucionar este 
> problema
> ???
>
> Gracias
> JoseC
>
>
>
>



-- 
Leonardo Micheloni.
Ayudando a organizar las primeras jornadas ágiles de Latinoamérica

http://agiles2008.org/

Blog Personal

http://leomicheloni.blogspot.com/
http://multithreadingincsharp.blogspot.com/



Responder a