Erstens, ich benutze ASP.net MVC 5 Framework. Ich wurde versucht, auf die Bid Model-Klasse zuzugreifen und meinen Benutzernamen in der Datenbank abzurufen. Aber es ist keine Arbeit.Beim Abrufen von Daten aus der Datenbank habe ich einen Nullwert, wie Sie das beheben können?
Hier meine Auktion Controller ist - (I kommentierte den Bereich, der sich ändern müssen)
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!";
}
Hier ist meine Auktion Modell
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;
}
}
}
Hier ist mein Gebotsmodell
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;
}
}
}
Bitte helfen Sie mir, diese zu lösen .. Ich bin so viel versucht, aber noch kann ich dachte, es nicht out..this ist der 4. Tag, dass ich versuche .. bitte helfen Sie mir ...
Dies ist der Ort, in Action Gebote Abschnitt Nullwert
var result = auction.Bids.Where(c => c.AuctionId.ToString() == bid.AuctionId.ToString()&&c.Amount> bid.Amount);
dies ändern müssen, aber ich weiß nicht, scheint, wie dies zu ändern, ich verschiedenen ways..but versucht, es nicht funktioniert. ..
Was ich versuche ist:
(Einfach ich versuche, hier zu tun, in Gebotsmodell - I definiert einen Benutzernamen Abschnitt. Also, ich möchte den Wert abzurufen, die sich auf das Angebot id)
Aber ich versuchte mehrmals, den Benutzernamen im Angebot Modell zu erhalten, aber „führen“ Variable immer null ...
ich habe versucht, die Auktion ID passieren und die Liste abzurufen, aber es ist die gleiche ... :(
ich ein paar Bilder beigefügt, die ich hoffe, es wird noch einige Informationen, die Ihnen geben .. Bitte helfen Sie mir
Details prüfen po inting zum Objekt - "i.stack.imgur.com/Ecd25.png"
Danke ....
Haben Sie überprüft, dass die AuctionId im Modell übergeben wird? 1- warum nicht Html.HiddenFor (in Teilansicht, wenn das Modell der Ansicht ist anders, um Tippfehler zu vermeiden, plus seine besser organisiert) @ Html.Hidden ("auctionId", auction.Id) 2- überprüfen Sie die Werte der Wo sind die Bedingungen, sind sie richtig? –
@SaadAlothman - ja sie sind korrekt –
AuctionId funktioniert auch, perfekt, nur Problem var Ergebnis Abschnitt in der Steuerung –