Archives par mot-clé : ASP.NET

ASP.NET MVC : binding de modèle à « null »

ASP.NET MVC : binding de modèle à « null »

Petit rappel des règles de binding de modèle en ASP.NET MVC pour éviter de perdre des heures, comme je viens de le faire 😉

Soit notre modèle :

public class Hardware
{
  public int ID{ get; set; }
  public String Manufacturer { get; set; }
  public String Model { get; set ;}
}

Notre action dans votre contrôleur:

[HttpPost]
public ActionResult Update(Hardware model)
{
  if(ModelState.IsValid){
    // ...
  }
  return View(model);
}

Lorsque que vous postez votre formulaire, votre modèle est null.

Cela est du au fait que le nom de votre argument représentant votre modèle est le même que celui d’une des propriétés de votre modèle.

Dans notre cas c’est model vs Hardware.Model. En effet la priorité du binder est de mapper les éléments d’un formulaire vers les arguments de même nom. Dans notre cas Hardware.Model est une chaîne, et l’argument model est un Hardware qui n’est pas compatible avec une chaîne donc notre model est null.

Nous n’avons qu’a modifier le nom de notre argument hardwareModel par exemple, et notre modèle est de nouveau bindé correctement.

A bientôt,

Yanos

Accès à IIS Express depuis l’extérieur

Accès à IIS Express depuis l’extérieur

Lors d’un développement ASP.NET sous Visual Studio on utilise IIS Express qui permet de faire du débogage de nos sites Web.

Le problème réside dans le fait que IIS Express ne permet qu’un accès via le nom « localhost ». Résultat impossible de tester notre site depuis un smartphone ou une tablette par exemple.

En fouillant le net on trouve des réponses à ce problème, toutefois je ne sais pas s’il y a eu des modifications entre temps, mais toutes les solutions que j’ai essayées ne fonctionnent pas complètement. Résultat je suis parvenu à faire un mix, et sur une machine française s’il vous plaît, car ca aussi c’est une petite blague (mais très petite 😉 )

Continuer la lecture de Accès à IIS Express depuis l’extérieur