Test WebAPI with Fiddler & Authorization

Ir a “Composer” y en el Parsed indicar:

https://user:pass@sitename

Ya no es necesario meterlo en el Request Body ni es necesario hacer el encode a Base64 del user:pass

 

🙂

Anuncios

‘Publish failed’ pero ‘Build succeeded’

Precedentes: Proyecto ASP.NET MCV .net framework 4.5

Compilo y todo OK. Genial! Publico y “failed” ¿Qué he hecho? Pues nada, solo actualizar paquetes Nuget.

Reviso los paquetes y ¡anda! Microsoft.Net.Compilers se ha actualizado a la versión 2.6.1 y esta versión requiere el .net framework 4.6+

Oye! que he perdido un buen rato en darme cuenta!! Ahora ya es fácil, bajo a la versión 2.0.1 que es la última que soporta el .NET 4.5 y ya me deja publicar.

SUGERENCIA al Visual Studio Team: estaría genial que se comprobara la versión de .NET antes de dejar instalar o actualizar un paquete.

🙂

Kendo UI. Refrescar contenido de ventana con PartialView.

View

<a data-url=’@Url.Action(“MyACtion”, “MyController”)’ data-id=”@id” href=”#” class=”myclass”> </a>

$(function() {
var myclass= $(“.myclass”);
var mywindow = $(“#mywindow”);
mywindow.kendoWindow({
width: “500px”,
actions: [“Close”]

});

myclass.click(function(e) {
e.preventDefault();
var url = $(this).data(“url”);
var data = { id: $(this).data(“id”) };
var dialog = $(“#mywindow”).data(“kendoWindow”);
dialog.title ( “Title.”);
dialog.content(“

“);
dialog.center();

dialog.open(
$.ajax({
url: url,
data: data,
method: ‘GET’,
success: function(result) {
$(‘#mywindow’).html(result);

}
}));
});

});

Controller:

 public async Task<ActionResult> MyAction(int id)
 {
 return PartialView("_partialview", (await _srv.MyMethodAsync(id)).ToList());
 }

MVC. Mostrar mensaje de la excepción en la vista sin generar un Exception.

==>Controller

public async Task<JsonResult> MyAction(int id)
{
try
{
await _service.MethodAsync(id);
return Json(new {Message = “ok”}, JsonRequestBehavior.AllowGet);
}
catch (Exception e)
{
return MyJsonWebHelper.ThrowJsonError(e.Message, Response);

}

}

==>Helper

public static JsonResult ThrowJsonError(Exception e, HttpResponseBase response)
{
var result = new JsonResult();

response.StatusCode = (int) HttpStatusCode.BadRequest;
var err = HttpContext.Current.Server.HtmlEncode(e.Message);
response.StatusDescription = err;

var message = new Dictionary<string, string> {{“Message”, e.Message}};

result.Data = message;
return result;
}

==> View

var url = ‘@Url.Action(“MyAction”, “MyController”)’;

$.ajax({
type: ‘POST’,
url: url,
data: { id: id },
success: function() {
//
},
error: function(err) {
alert(decodeURI(err.statusText));
}

});