jueves, 26 de junio de 2014

No hay constructor sin parámetros definido para este objeto

Enunciado:

Creas un modelo, una acción etiquetada httpPost y las vistas correspondientes.
Cuando realizar la primera prueba tienes el error:
No hay constructor sin parámetros definido para este objeto

Solución:

Una vez mas te has olvidado de crear un constructor sin parámetros para el modelo.

Ejemplo:

La acción
        [HttpPost()]
        public ActionResult Guardar(UsuarioEdicion datos)
        { ....
En el modelo falta el constructor marcado en rojo

Public class UsuarioEdicion
{
Public UsuarioEdicion(){}
........


martes, 17 de junio de 2014

@Html.ActionLink y ?length=n

Sintomas

En Razor escribes algo así como:
@Html.ActionLink("Texto del enlace", "Accion", "NuevoControlador", new {id=1})
Que te debia sacarte del contexto "ControladorActual" para llevarte a "NuevoControlador"
Por tanto esperas que se genere:
<a href="http://www.blogger.com/miweb/NuevoControlador/Acccion/1" >Texto del enlace</a>
Pero se genera:
<a href="http://www.blogger.com/miweb/ActualControlador/Accion?length=21" >Texto del enlace</a>

Solución:

Reemplaza por:
@Html.ActionLink("Texto del enlace", "Accion", new {Controller="NuevoControlador", id=1})
Y listo.

Comentario:

Me ha pasado tantas veces cada vez que he vuelto a usar el html.actionlink que al final lo he escrito para no olvidarme.

jueves, 13 de marzo de 2014

Añadir atributos HTML en @html.EditorFor

Enunciado:

Quieres añadir atributos HTML como la clase CSS en el código generado por el Helper @html.EditorFor

Solución :

Desde MVC5 se puede hacer pero de una forma distinta a la que se sigue en los otros helper. En lugar de usar un parametro han reutilizado el parametro addionnalViewData y han añadido un nuevo ViewData htmlAttributes.
Mejor verlo con un ejemplo:

@Html.EditorFor(model => model.Dominio,
                             new { 
                                       htmlAttributes = new {
                                                                        @class = "form-control",
                                                                        @maxlength = "50",
                                                                        @placeholder = "Nuevo dominio"
                        } })


viernes, 17 de enero de 2014

Problema al actualizar Razor de la versión 2 a la 3

Sintomas:

[A]System.Web.WebPages.Razor.Configuration.HostSection no puede convertirse en [B]System.Web.WebPages.Razor.Configuration.HostSection. El tipo A se origina a partir de 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' en el contexto 'Default' en la ubicación 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll'. El tipo B se origina a partir de 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' en el contexto 'Default' en la ubicación 'C:\Users\arturosoler\AppData\Local\Temp\Temporary ASP.NET Files\root\698c7daf\30eb994\assembly\dl3\81df2216\2827e9b5_7213cf01\System.Web.WebPages.Razor.dll'.

Solución:

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
    </dependentAssembly>
  </assemblyBinding>
</runtime>

Fuente de la solución

http://blog.jongallant.com/2013/09/razorconfigurationhostsection-issue.html#.UtkZdBB5PGA

miércoles, 20 de noviembre de 2013

Guardar correctamente la copia de elemento enviado con Outlook gestionando varios buzones

Contexto:

Gestionas varios buzones de Exchange en un mismo perfil de Outlook, esto es, tienes un buzón principal y varios secundarios.

Problema:

Cuando envías mensajes utilizando como dirección de origen la de un buzón secundario los mensajes se almacenan en elementos enviados del buzón principal.

¿Cómo conseguir que se almacenen en los  elementos enviados del buzón del remitente especificado?

Solución

La configuración se realiza mediante Outlook Web Access pero es una configuración de servidor que resuelve el problema también en Outlook.

  1. Acceder con Outlook Web Access al buzón secundario
  2. Ir a "Ver todas las opciones" mediante la lista desplegable "Opciones" (arriba a la derecha).
  3. En Configuración/Correos enviados cambiar las listas desplegables a "Desde el buzón".
  4. Guardar y listo.


miércoles, 13 de noviembre de 2013

Imagen del sistema en Windows 8.1

Pregunta:
¿Cómo puedo crear una imagen del sistema en Windows 8.1?
Antes, en Windows 8, buscaba en configuración "copia de seguridad de Windows 7", pero ahora no obtengo resultados.
Solución:
Ves a Panel de control\Sistema y seguridad\Historial de archivos.
En la esquina inferior izquierda tienes un enlace Copia de seguridad de imagen del sistema

viernes, 25 de octubre de 2013

Perdida de conexión a red actualizando a Windows 8.1

Síntomas:

Cuando actualizas Windows 8 hasta Windows 8.1.
La conexión de red se pierde al cabo de unos minutos de arrancar el ordenador.
No puedes navegar por Internet, no puedes acceder a carpetas de red o al servidor de correo.
Si reinicias recuperas la conexión temporalmente.

Solución:

En mi caso y otros varios encontrados en Google, el problema esta el controlador del adaptador de red.

Para resolverlo:
Accede a administrador de dispositivos (tecla windows + x), ves a adaptadores de red, veras tu adaptador
Con el botón derecho dale a actualizar el controlador.
Elige la segunda opción: "Buscar Software de controlador en el equipo"
Luego nuevamente elige la segunda opción: "Elegir en una lista de controladores en el equipo"
Si te aparecen varios controladores, prueba a ver si alguno funciona.
Si solo aparece uno tendrás que descargar el controlador de la web de fabricante del equipo o del controlador.
Si aun no has actualizado valdrá la pena que descargues ese controlador previamente.

En mi caso  Broadcom NetLink (TM) Gibabit Ethernet aparecieron cuatro controladores compatibles (de hecho todos parecen para el mismo adaptador).
Yo opté por el tercero con "(TM)" al final en lugar de en medio de otras palabras y se resolvieron los problemas.

.