You are currently browsing the category archive for the ‘Visual studio’ category.

Esta útil propiedad de ASP .NET 2.0 nos permite definir una campo predeterminado para el control DropDownList cuando estamos recogiendo los campos de un SqlDataSource. Para añadir el campo que queremos simplemento añadimos un LisItem manualmente y ya está.

<asp:SqlDataSource id=”SqlDataSource1″ runat=”server” ConnectionString=”<%$ ConnectionStrings:DBConnectionString%>” SelectCommand=”SELECT * FROM tbDB”/>

<asp:DropDownList ID=”DDLMiLista” runat=”server” DataTextField=”nombre” DataValueField=”valor” DataSourceID=”SqlDataSource1″ AppendDataBoundItems=”true”>

<asp:ListItem Selected=”True” Enabled=”true” Text=”– Selecciona una opción–“></asp:ListItem>

</asp:DropDownList>

Es muy normal que necesitemos almacenar variables globales para poder usarlas en toda nuestra aplicación asp.net, para ello podemos utilizar el web.config y almacenarlas en la zona de <appSettings></appSettings>.

Veamos un ejemplo…si queremos tener la url de nuestro sitio en toda la aplicación

<appSettings>
<add key=”url” value=”http://direccion_url&#8221; />
</appSettings>

y para recuperarla en nuestras páginas aspx deberemos utilizar…

string strUrl = System.Configuration.ConfigurationSettings.AppSettings[“url”];

De forma predefinida los controles ASP.NET generan tablas html para representar gráficamente todos sus elementos.

En el desarrollo de sitios Sharepoint (y en cualquier otro sitio) es muy interesante el poder convertir el menú principal de la aplicación para que sea lo más accesible posible y para que podamos usar hojas de estilos css a nuestro antojo.

Para realizar esta tarea Microsoft ha puesto a nuestro servicio los ASP.NET 2.0 CSS Friendly Control Adapters 1.0 que tras una rápida instalación en Visual Studio podremos usar en nuestros desarrollos.

El proceso de instalación y uso (y sin que srva de precedente para Microsoft…) está muy bien explicado en el White paper disponible en la web y en el SDK.

Podéis consultar más información en la web dedicada.

http://www.asp.net/cssadapters/

fragmentos de códigoEs muy probable que no tengas vinculados en VS 2005 los fragmentos de código (snippets) necesarios para generar los archivos feature.xml y workflow.xml en Visual Studio cuando intentas crear un Workflow.

Para vincularlos debes ir a Herramientas > Administrador de fragmentos de código

Importante!: Si no ves esta opción en el menú ve a Herramientas > Personalizar > Pestaña Comandos > Categoría Herramientas y arrastra el comando ‘Administrador de fragmentos de código’ al menú de herramientas

Y añadir la carpeta de snippets xml de Sharepoint que tienes en C:\Program Files\Microsoft Visual Studio 8\Xml\1033\Snippets\SharePoint Server Workflow

Para tener acceso al Administrador de fragmentos de código

  • En el menú Herramientas, haga clic en Administrador de fragmentos de código.

Para agregar un directorio al Administrador de fragmentos de código

  1. En la lista Lenguaje, seleccione el lenguaje al que desea agregar un directorio.
  2. Haga clic en Agregar. Se abre la ventana Directorio de fragmentos de código.
  3. Seleccione el directorio que desee agregar al Administrador de fragmentos de código y haga clic en Aceptar. El directorio se utilizará para buscar en él fragmentos de código disponibles.

Para quitar un directorio del Administrador de fragmentos de código

  1. Seleccione el directorio que desee quitar.
  2. Haga clic en Quitar.

Para importar un fragmento de código al Administrador de fragmentos de código

  1. En la lista Lenguaje, seleccione el lenguaje al que desee agregar el fragmento de código.
  2. Seleccione la carpeta existente donde desee colocar el fragmento de código importado.
  3. Haga clic en Importar. Se abrirá la ventana Directorio de fragmentos de código.
  4. Seleccione el directorio que desee agregar al Administrador de fragmentos de código y haga clic en Aceptar. El fragmento de código estará disponible para su inserción en el Editor de código.

Cuando queremos publicar un workflow en Sharepoint 2007 la mejor manera de hacerlo es como una característica (feature) así lo tendremos disponible en todos los lugares de nuestra Aplicación web.

Requisitos iniciales

  • Visual Studio 2005
  • Visual Studio 2005 Extensions for Windows Workflow Foundation (ES)

Pasos previos

  • Firmar el ensamblado (Assembly)
  • Rellenar los ficheros feature.xml y workflow.xml con los datos necesarios

Una vez que hemos creado y desarrollado el proyecto de WF lo tenemos que generar sobre el sitio Sharepoint, tenemos dos opciones:

  • utilizar VS y generarlo directamente sobre MOSS (automática)
  • realizar el proceso manualmente (manual)

Prceso 1 – Automática
La instalación automática se realiza tras generar nuestro proyecto al ejecutarse el archivo PostBuildActions.bat, que es donde se realizan todos los pasos necesarios (registrar ensamblado en el GAC  e instalar la característica en SP)

  • Editamos la propiedades de nuestro proyecto cambiando “NODEPLOY” a “DEPLOY” en la pestaña Eventos de generación en el apartado Línea de comandos del evento posterior a la generación.
  • El proceso de generación puede ser de dos tipos:
    • Debug, se instalará la característica en SP, luego tendremos que ir a Desarrollo > Configuración del sitio > Características del sitio   y activarla para tenerla disponible
    • Release, se instalará y activará la característica en SP y además se genera un archivo .WSP (SharePoint Solution Packages ) que nos servirá para la instalación en los entornos de producción
  •     Para editar el tipo de instalación que queremos realizar iremos a Propiedades>Generar>Configuración

Proceso 2 – Manual

  •  Crear la carpeta de la característca en C:\Archivos de programa\Archivos comunes\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES
  • Copiar a esta carpeta los archivos feature.xml y workflow.xml
  • Utilizamos la herramienta de VS gacutil para registrar el ensamblado en el GAC

gacutil /i [path de nuestro workflow.dll]

  • Instalar la característica con la herramienta de instalación de Sharepoint stsadm.exe y el comando

-o installfeature -name [nombre del directorio donde están los archivos xml]

  • Activar la característica

-o activatefeature -name [nombre del directorio donde están los archivos xml] -url [url aplicación web]

Una vez instalada y activada la caraCterística y para que esté disponible en nuestra librería deberemos ir a ésta y agregar un nuevo flujo de trabajo.

Gracias a este post podremos configurar Visual Studio para poder trabajar con los WF de Sharepoint 2007 sin necesidad de tener una máquina con Windows Server.

Ver enlace.–>http://www.sharepointblogs.com/serval/archive/2007/02/20/errores-en-la-vista-dise-241-o-de-workflows-en-visual-studio.aspx

Para facilitarnos la tarea a la hora de implementar Features para MOSS 2007 debemos activar el Esquema CAML en Visual Studio, de esta forma podremos utilizar la inteligencia XML cuando estemos definiendo nuestro ficheros (lista desplegable de opciones al introducir un tag en el editor).

El proceso para habilitarlos es el siguiente:

  • Botón-derecho en el ratón sobre el fichero XML en el que queremos añadir el esquema (en mmi caso es un fichero para un feature es decir feature.xml)
  • En el cuadro de propiedades seleccionamos ‘Esquemas’ y pulsamos sobre el cuadro deopción para abrir el desplegable con todos los esquemas disponibles. Como este festure lo estoy realizando en una máquina que no tiene MOOS 2007 instalado deberé buscar el fichero de esquema apropiado en el servidor donde voy a desplegarlo.
  • Pulsamo el botón añadir…
  • En la ruta buscamos ..\12\TEMPLATE\XML directorio y en él el fichero wss.xsd y pulsamos Abrir
  • Finalmente aceptamos y ya tenemos el esquema disponible para editar nuestro fchero XML con el esquema activado.

Nota: En el caso de que no estés trabajando en un servidor WSS deberías copiar el esquema a tu disco duro y repetir el proceso.

Instalación de Sharepoint 2007
– Tenemos que tener instalados una serie de servicios adicionales para poder instalarlo, entre otros hay que instalar la extensión para el IIS superior a 6.0 el .NET Framework 2.0 ó 3.0 y otros
– Instalamos IIS  introduciendo el CD del Server 2003 y seguimos las instrucciones hasta que nos aparece este mensaje de confirmación.
– El siguiente requisito es tener instaldo el .NET Framework 2.0 cómo mínimo, vamos a instalar el 3.0 y el terminal server para poder acceder de manera remota (aunque como es para desarrollo esta funcionalidad es muy posible que no la necesitemos todavía). Como el .net 3.0 son 65Mb aproximadamente la descarga e instalación os costará un rato.
– En este punto es importante que vayáis a Windows Update e instaléis todas las actualizaciones pendiente para la plataforma que queremos montar. Reiniciar.
– Insertamos el CD, y ejecutamos el setup.cmd, la opción que hemos seleccionado es la básica para nuestro entrono de desarrollo, tras seleccionarla comienza la instalación.
– Una vez finalizada la instalación nos aparecerá esta pantalla para empezar a configurar el producto Microsoft Office Sharepoint 2007
– Comenzamos el proceso de configuración eligiendo la opción ‘Sí’ para reiniciar los servicios necesarios, la barra de progreso nos va indicando que productos y servicios se están instalando en nuestro servidor Sharepoint. Este también es un proceso bastante largo por lo que se puede ir haciendo cualquier otra cosa mientras avanza la instalación (en mi caso leer documentación sobre C# …)

Visual Studio 2005 nos permite diseñar workflows para Sharepoint de forma gráfica. Los workflows para Sharepoint necesitan unas dll’s que no tendrás en tu equipo si no es servidor de Sharepoint. Por ello nos saldrá unos errores al no encontrar estas dll’s.

The type initializer for ‘Microsoft.Sharepoint.WorkflowActions.OnWorkflowActivated’ threw an exception.

Este error nos aparecerá cuando intentemos cargar la vista diseño del workflow. Pero con unos sencillos pasos prepararemos nuestra máquina para solventar esto error y desarrollar workflows de Sharepoint en máquina de desarrollo:

1. Copiar las dll’s desde la carpeta C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI del servidor a la misma carpeta en la máquina deseada.
2. Registrar las siguientes dll’s en el GAC. Para ello, simplemente arrastralas desde la carpeta C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI a la carpeta c:\windows\assembly:
* Microsoft.SharePoint.dll
* Microsoft.SharePoint.Security.dll
* Microsoft.sharepoint.WorkflowActions.dll
* Microsoft.office.workflow.tasks.dll
3. Instalar las Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation)
4. Instalar el SharePoint Server 2007 SDK: Software Development Kit and Enterprise Content Management Starter Kit

También nos podremos encontrar con otro error:

Could not load file or assembly ‘Microsoft.SharePoint.WorkflowActions.intl, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c’ or one of its dependencies. The system cannot find the file specified.

1. Copiar la dll’s desde el GAC de un servidor con Sharepoint instalado desde una consola para que nos permita copiar las dll’s:
Inicio–>Ejecutar–>CMD
> cd \WINDOWS\assembly\GAC_MSIL\
Microsoft.SharePoint.WorkflowActions.intl\12.0.0.0__71e9bce111e9429c
> copy microsoft.sharepoint.WorkflowActions.intl.dll c:\
cd\WINDOWS\assembly\GAC_MSIL\
Microsoft.SharePoint.WorkflowActions.intl.resources\12.0.0.0__71e9bce111e9429c
copy microsoft.SharePoint.workflowactions.intl.resources.dll c:\
2. Mover las dos dll’s al equipo de desarrollo y registrarlas en el GAC.

REQUISITOS SOFTWARE
– Microsoft Visual Studio 2005 Profesional (express edition no sirve)
– Visual Studio 2005 Extensions for Windows Workflow Foundation (ES)
– Windows SharePoint Services Software Development Kit (SDK) // wsssdk.exe
– Office Sharepoint Server 2007 SDK 1.2 // OfficeServerSDK.exe
– Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions // VSeWSS.exe –> no hace falta