2010-08-04 10 views
6

Tengo un proyecto que utiliza conjuntos de datos fuertemente tipados.Conjuntos de datos fuertemente tipados y cambios de esquema

Supongamos que deseo cambiar el esquema de la base de datos utilizada por esta aplicación. Tengo una tabla llamada Country y quiero agregar una nueva columna llamada "IsADemocracy" (que es un ejemplo) del tipo de datos SQL Server BIT.

Ahora, ¿cómo actualizo el conjunto de datos fuertemente tipado para poder utilizar este nuevo campo en la aplicación?

He intentado agregar la columna en la tabla Country en el conjunto de datos, le he dado el tipo de booleano y ha asignado su propiedad "Fuente" a "IsADemocracy".

Puedo acceder al campo en la aplicación, darle un valor, etc., pero las consultas subyacentes realizadas por el adaptador de tabla no se han actualizado para reflejar este cambio. Están como estaban antes de que agregara esta columna en el conjunto de datos fuertemente tipado. Espero que lo que hice sea suficiente, pero no parece ser el caso.

¿Debo regenerar las clases fuertemente datasets de alguna manera? Si es así, ¿cómo y cuáles son las implicaciones?

Probablemente podría eliminar la tabla Country en el diseñador del conjunto de datos, y volver a dibujarla desde Server Explorer, pero tengo consultas del cliente y no quiero perderlas.

Gracias.

Respuesta

1
  1. En primer lugar, asegúrese de que tiene una copia de seguridad

  2. Haga clic derecho en el nodo .xsd en el Explorador de soluciones y seleccione "Ejecutar herramienta personalizada"

Pero tenga cuidado con su aduana Consultas. Tienen una tendencia a desaparecer sin previo aviso. No siempre.

Este es un buen motivo para completar esas consultas del archivo 'principal' de la clase parcial.

+0

Lo sentimos, probamos la herramienta personalizada Ejecutar antes y no parece actualizar las clases. También traté de cambiar el nombre de la tabla y el adaptador de tabla en el diseñador como sugiere este sitio web (http://www.devfuel.com/2007/03/strongly-typed-dataset-force-refresh-of.html), pero no es así. no te actualices –

+1

Sí, tienes razón. La herramienta personalizada (WSDL) no vuelve a leer el esquema db. Deberá volver a compilar todos los adaptadores (modificados) nuevamente (haga clic con el botón derecho, configure). Tenga en cuenta que esa es una forma segura de perder personalizaciones en las consultas CRUD. –

+0

Los conjuntos de datos mecanografiados simplemente no son muy agradables cuando cambia el esquema. –

2

Otra sugerencia: haga clic con el botón derecho en la representación de la tabla en el diseñador, es decir, el xsd, y utilice la opción Agregar para agregar una columna. Una vez que tenga la columna, debe establecer sus propiedades, ya que de forma predeterminada se agrega una nueva columna como una cadena. Hacerlo de esta manera significa que conservará cualquier consulta personalizada, etc. que se haya agregado antes.

Esto le permite agregar columnas, obviamente eliminar es más sencillo.

Cuestiones relacionadas