Archivo de la categoría: .Net

Only Content controls are allowed directly in a content page that contains Content controls

Este error quiere decir que tenes algun codigo fuera del area editable del template que esta aplicado a tu pagina.
Ejemplo:

</asp:Content>
<%
       UrlHelper urlHelper = new UrlHelper(this.ViewContext.RequestContext);
 
%><asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">

Threads con parametros

En general cuando se trabaja con Threads se utiliza el delegado ThreadStart, que no toma ningun, parametro. Para pasar parametros al Thread la firma de la funcion debe recibir un solo parametro de tipo objet y retornar nada.
Ejemplo:

static void ThreadConParametro(object o){
 
string info=(string) o;
Console.Write(info);
Thread.Sleep(10);
}
 
//donde se la quiera invocar
ParameterizedThreadStart  operacion=new ParameterizedThreadStart(ThreadConParametro);
Thread hilo=new Thread( operacion);
hilo.Start("parametro");

Listo!

Acceso desde el teclado a funciones en Visual Studio

Modo pantalla completa:  ALT + Shift + Enter
Copiar o cortar una línea: CTRL + C/V en la línea sin seleccionar nada
Cerrar el bloque de código (code unit) actual: CTRL M+M
Cerrar todos los bloques de código a su definición: CTRL+M+O (Sin soltar CTRL)
Autoformateo de código: CTRL+K+D o de una selección de código: CTRL+K+F
Agregar Namespaces: CTRL + . (punto)
Comentar código: CTRL+K+C, descomentar CTRL+K+U
Agregar margen: TAB, quitar margen: SHIFT + TAB
Cambiar de Vista: F7
Explorador de Solucion: CTRL+ALT+L
Ventana de Propiedades: F4
Controles: CTRL+SHIFT+X
Lista de Errores: CTRL+/+E
Ir a la declaración y volver: F12 Te lleva a la declaración y CTRL+- Te trae de vuelta
Articulo Original

Borrando una tabla del Modelo en EntityFramework

Cuando se borra una entidad del Designer del Entity Framework, se siguen quedando las referencias a las tablas dentro del archivo EDMX.
Hay 2 soluciones posibles:

1- El asistente tiene la logica para borrar toda referencia, pero en la base de datos es necesario cambiar de nombre las tablas para que el asistente las quite del EDMX.

2- La otra opcion y unica en un ambiente de produccion es, abrir el archivo EDMX y quitar toda referencia del XML a mano.

Lo mejorsito que encontre referente a este problema fue aca.

Llamar a una funcion en el master page

Para cuando se precisa invocar una función del master page desde una página que tiene aplicado el mismo.
Suponiendo que la clase de la pagina sea miMasterPage

miMasterPage master=(miMasterPage)this.Master;
master.funcion(parametro);

Potential runtime violation of table keys

Este error:

Problem in Mapping Fragment starting at line NroLinea: Potential runtime violation of table Tabla’s keys (Entidad.Key): Columns (Entidad.Key) are mapped to EntitySet Tabla’s properties (Tabla.keyNuevo) on the conceptual side but they do not form the EntitySet’s key properties (Tabla.Key1, Tabla.Key2, Tabla.Key3)

Sucede cuando agregamos el diseño relacional una tabla sin primary key, entonces el EF hace que todas los campos sean key, o cuando teniamos varias keys y quitamos algunos key’s.

Por alguna razon el EF no quita esos PK al actualizar el Entity Data Model, hay que editar el XML del archivo edmx, buscar la definicion:

 <EntityType Name="Tabla">

Y dentro de Key borrar los PropertyRef de los campos que antes estaban como key y ahora ya no estan.

Quitar espacios de una cadena

Como quitar los espacios en blanco de una cadena. Articulo original

public static string RemoveWhitespace(this string str)
{
    try
    {
        return new Regex(@"\s*").Replace(str, string.Empty);
    }
    catch (Exception)
    {
        return str;
    }
}

Unable to update the EntitySet because it has a DefiningQuery and no element exists in the element to support the current operation

Este error:

Unable to update the EntitySet  because it has a DefiningQuery and no <InsertFunction> element exists in the <ModificationFunctionMapping> element to support the current operation

Es porque la tabla en la base de datos no tiene clave primaria, hay que crearle almenos una clave primaria a la tabla en la base de datos, actualizar el modelo y fijarse que todas las claves primarias esten correctamente mapeadas en el modelo.