【发布时间】:2014-09-24 18:01:46
【问题描述】:
我正在使用 asp.net mvc,我正在调用休息服务并在列表中收到 4 张收据(Se 下图)。 问题是我想将我必须的结果列表转换为响应结果,但列表中仍有 4 个项目。 当返回对我的视图的响应而不是列表中的 4 项时,我只有 1 商店,列表中的 1 收据。 p>
我的 Linq 查询有什么问题?我几乎在所有地方都添加了 .ToList() 。
提前致谢。
asp.net
我有一个类如下的模型
public class ReceiptsViewModel
{
public List<RestAPI.Store> Stores { get; set; }
public List<RestAPI.POSProvider> Providers { get; set; }
public List<RestAPI.Receipt> Receipts { get; set; }
public List<RestAPI.StoreChain> StoreChains { get; set; }
}
[HttpGet]
public ActionResult Receipts()
{
Guid userId = Guid.Parse(CookieHelper.GetCookieValue("UserId"));
var result = ReceiptService.GetReceiptsByUserId(userId);
var response = (from r in result.Receipts
select new Eflag.Receipt.Web.Mvc.Areas.Dashboard.Models.User.ReceiptsViewModel()
{
Receipts = new List<Models.RestAPI.Receipt>()
{
new Models.RestAPI.Receipt()
{
ReceiptUniqueId = r.ReceiptUniqueId,
ReceiptId = r.ReceiptId,
CashierId = r.CashierId,
CashierName = r.CashierName,
ReceiptDateTime = r.ReceiptDateTime,
POSPlace = r.POSPlace,
Total = r.Total,
TotalTax = r.TotalTax,
TotalNet = r.TotalNet,
TotalDiscount = r.TotalDiscount,
Rounding = r.Rounding,
ItemAmount = r.ItemAmount,
Currency = r.Currency,
CurrencyCode = r.CurrencyCode,
MembershipCardUsed = r.MembershipCardUsed,
MembershipCardId = r.MembershipCardId,
Revoked = r.Revoked,
CardCompany = r.CardCompany,
FreeText = r.FreeText,
Items = (from i in r.Items
select new Item()
{
ItemUniqueId = i.ItemUniqueId,
ItemId = i.ItemId,
Ean = i.Ean,
Name = i.Name,
CurrentPrice = i.CurrentPrice,
RegularPrice = i.RegularPrice,
Color = i.Color,
ItemRowCount = i.ItemRowCount,
ItemOrder = i.ItemOrder,
TotalGrossAmount = i.TotalGrossAmount,
TotalNetAmount = i.TotalNetAmount,
Removed = i.Removed
}).ToList()
}
}.ToList(),
Stores = new List<Store>()
{
new Store()
{
StoreUniqueId = r.Store.StoreUniqueId,
StoreId = r.Store.StoreId,
Name = r.Store.Name,
CorporateId = r.Store.CorporateId,
Adress = r.Store.Adress,
PostalCode = r.Store.PostalCode,
Phone = r.Store.Phone,
Email = r.Store.Email,
Status = r.Store.Status
}
}.ToList(),
Providers = new List<POSProvider>()
{
new POSProvider()
{
POSProviderUniqueId = r.POSProvider.POSProviderUniqueId,
Name = r.POSProvider.Name,
CorporateId = r.POSProvider.CorporateId,
Adress = r.POSProvider.Adress,
PostalCode = r.POSProvider.PostalCode,
Phone = r.POSProvider.Phone,
ContactPerson = r.POSProvider.ContactPerson,
Email = r.POSProvider.Email,
Status = r.POSProvider.Status
}
}.ToList(),
StoreChains = new List<StoreChain>()
{
new StoreChain()
{
StoreChainUniqueId = r.StoreChain.StoreChainUniqueId,
Name = r.StoreChain.Name,
StoreChainId = r.StoreChain.StoreChainId,
Status = r.StoreChain.Status
}
}.ToList()
});
return View(response);
}
【问题讨论】:
-
此单个对象是您要捕获的列表中的最后一个对象吗?
标签: c# asp.net-mvc linq entity-framework