Tout d'abord, j'utilise ASP.net MVC 5 Framework. J'ai essayé d'accéder à la classe Modèle d'enchères et de récupérer mon nom d'utilisateur dans la base de données. Mais ce n'est pas le travail.Lors de la récupération des données de la base de données, j'ai une valeur nulle, Comment résoudre ce problème?
Voici mon Auction Controller - (je commentais la région qui ont besoin de changer)
var result = auction.Bids.Where(c => c.AuctionId.ToString() == bid.AuctionId.ToString()&&c.Amount> bid.Amount);
//I want to get my username in bids model, but it is not retrieving........................................
if (result.Equals(null))
{
TempData["Hello"] = "Sorry the bid has been expired!";
return RedirectToAction("Auction", new { id = bid.AuctionId });
}
else
{
TempData["Hello"] = "Bid has a won person";
return RedirectToAction("Auction", new { id = bid.AuctionId });
}
//TempData["Hello"] = "This bid has expired!";
}
else
{
var result = db.Bids.Where(c => c.AuctionId.Equals(bid.AuctionId));
if (result.Equals(" "))
{
TempData["Hello"] = "Sorry the bid has been expired!";
return RedirectToAction("Auction", new { id = bid.AuctionId });
}
else
{
TempData["Hello"] = "Bid has a won person";
return RedirectToAction("Auction", new { id = bid.AuctionId });
}
//TempData["Hello"] = "This bid has expired!";
}
Voici mon modèle d'enchères
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Samurai.Models
{
public class Auction
{
[Key]
[Required]
public long Id { get; set; }
public virtual Collection<Bid> Bids { get; private set; }
public int BidCount
{
get { return Bids.Count; }
}
public Auction()
{
Bids = new Collection<Bid>();
CurrentPrice = 0;
}
}
}
ici est mon modèle de soumission
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Samurai.Models
{
public class Bid
{
[Key]
[Required]
public long Id { get; internal set; }
[Required]
public long AuctionId { get; set; }
[Required]
public string Username { get; set; }
[Required]
[Range(1, double.MaxValue)]
public decimal Amount { get; set; }
public Bid()
{
Timestamp = DateTime.Now;
}
}
}
S'il vous plaît aidez-moi à résoudre ce .. Je suis tellement essayé, mais je ne peux pas compris ce out..this est 4ème jour que je suis en train .. s'il vous plaît aidez-moi ...
C'est l'endroit dans la section des offres ActionResult apparaît valeur nulle
var result = auction.Bids.Where(c => c.AuctionId.ToString() == bid.AuctionId.ToString()&&c.Amount> bid.Amount);
c'est nécessaire de changer, mais je ne sais pas comment changer cela, j'ai essayé différentes ways..but il ne fonctionne pas. ..
Ce que j'essaie de faire est:
(Simplement j'essaie de faire ici, dans le modèle d'offre - J'ai été défini une section de nom d'utilisateur. Donc, je veux récupérer la valeur qui est la référence à l'ID d'offre)
Mais j'ai essayé plusieurs fois d'obtenir le nom d'utilisateur dans le modèle d'offre, mais « résultat » variables toujours nulle ...
j'essayé de passer l'ID d'enchères et récupérer la liste, mais il est le même ... :(
Je joins quelques photos que je l'espère pour vous donner quelques informations .. S'il vous plaît aidez-moi
Vérification des détails Inting à l'objet - "i.stack.imgur.com/Ecd25.png"
Merci ....
avez-vous vérifié que le AuctionId est passé dans le modèle? 1- pourquoi ne pas utiliser Html.HiddenFor (mettre en vue partielle si le modèle de la vue est différent pour éviter les fautes de frappe, plus son mieux organisé) @ Html.Hidden ("auctionId", auction.Id) 2- vérifier les valeurs de la où les conditions sont-elles correctes? –
@SaadAlothman - oui ils sont corrects –
AuctionId fonctionne également, parfaitement, seulement problème var section de résultat dans le contrôleur –