martes, 16 de junio de 2009

DataContext desde código

En este artículo de Microsoft se explica como conectarse a una base desde Linq. Ademas se agrega un DataContext desde código. El problema es que no me funciona al agregrarlo a mi proyecto. Falta un namespace ¿Que namespaces debe ir?

el namespaces es System.Data.Linq, se debe agregar la referencia al ensamblado System.Data.Linq en el menu Project -> Add Reference.

Por lo que nos queda:
DataContext db = new DataContext(ConfigurationManager.ConnectionStrings["conexion"].ToString());

En el archivo Web.config definí la cadena de conexión:

<connectionStrings>
<add name="conexion" connectionString="Server=MARCOS-PC\SQLEXPRESS;Database=CarpetasSeguridad;User ID=sa;Password=123456;Trusted_Connection=False;"/>
</connectionStrings>

Por lo que para llamarla desde cualquier parte de la aplicación. Primero se debe agregar el ensamblado de configuración.

using System.Configuration;

para retornar una lista de una tabla se puede utilizar un código como sigue:

public class miServicio : Imiservicio {

DataContext db = new DataContext(ConfigurationManager.ConnectionStrings["conexion"].ToString());

public List ObtenerCarpetas(string Servidor) {
Table carpetas = db.GetTable();
var consulta = from p in carpetas
where p.Servidor == Servidor
select p;
return consulta.ToList();
}
}

Otros links de consulta:

Tutorial de Silverlight 2 con WCF
http://geeks.ms/blogs/mredison/archive/2008/05/16/tutorial_2D00_de_2D00_silverlight_2D00_2_2D00_con_2D00_wcf.aspx

domingo, 7 de junio de 2009

UserControl is not supported in a WPF

UserControl is not supported in a Windows Presentation Foundation (WPF) project

Este error se presenta al abrir un proyecto creado con Visual Studio 2008 en Microsoft Blend. La razón es que en Blend se debe hacer referencia a las siguientes librerias:

PresentationCore.dll
PresentationFramework.dll
WindowsBase.dll.

Para agregar las referencias en Blend es sencillo, en el menú Project , elegir Add Reference

Las librerias se encuentran en esta dirección:
C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0