J'essaie de créer une nouvelle ligne dans une table que j'ai hébergée dans Azure SQL Database. Mon frontal est AngularJS avec C# dans .NET comme l'extrémité arrière. Voici mon code de l'extrémité avant le passage de l'objet:Passer l'objet JavaScript à C#
var insertTicket = function (newTicket) {
return $http.post("http://localhost:50412/api/tickets", JSON.stringify(newTicket))
.then(function (response) {
console.log(response);
console.log("Insert Successful");
return;
});
Et voici mon code back-end qui reçoit les données et tente d'ajouter à la base de données:
[Route("api/tickets")]
public HttpResponseMessage Post(Ticket t)
{
TicketsRepository.InsertTicket(t);
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK);
return response;
}
En TicketRepisitory:
public static void InsertTicket(Ticket tick)
{
var maxID = (from ticket in dataContext.Tickets
select ticket.id).Max();
var tick = new Ticket();
tick.id = maxID + 1;
dataContext.Tickets.Add(tick);
dataContext.SaveChanges();
}
Et voici ma classe de billets:
public partial class Ticket
{
//Properties
public int id { get; set; }
public string title { get; set; }
public string customer { get; set; }
public string barcode { get; set; }
public string assignedTo { get; set; }
public string category { get; set; }
public string importance { get; set; }
public Nullable<System.DateTime> openDate { get; set; }
public Nullable<System.DateTime> dueDate { get; set; }
public Nullable<System.DateTime> closedDate { get; set; }
public string comments { get; set; }
public string condition { get; set; }
public Nullable<int> workHours { get; set; }
//Relationships
public Employee Employee { get; set; }
public Employee Employee1 { get; set; }
public Equipment Equipment { get; set; }
}
Je pense que le problème est avec Post() attend un objet ticket. J'ai essayé de chercher comment recevoir des données JSON et l'utiliser pour Ticket, mais sans beaucoup de chance.
Mon problème est que je ne peux pas créer une nouvelle ligne. Aucun changement n'est reflété dans ma base de données.
Vous ne dites pas quel est votre véritable problème? Que voyez-vous réellement ce n'est pas ce que vous voulez? –
À quoi ressemblent les objets ** newTicket ** du côté client et la classe ** Ticket ** du côté serveur? Voyez-vous une erreur de script dans le navigateur? – Win
Avez-vous utilisé un débogueur pour voir quelle valeur t est quand il est appelé? Est-ce qu'on l'appelle du tout? Si oui, est-il nul ou rempli d'une sorte de valeur? Assurez-vous que les propriétés de la classe Ticket correspondent aux champs json dans New Ticket. – JNYRanger