从实体的其他表中获取最低价格

问题描述:

即时工作在本网站上,我将所有可用产品放在一个页面上。每个产品都有自己的ProductDetail(s),颜色,尺寸,价格等。从实体的其他表中获取最低价格

我想显示此产品的最低可用价格。我使用带有产品列表的ViewModel,此时我不知道如何我可以得到这个具体产品的价格。它的产品细节也是一个列表。所以不知何故,我应该得到其ProductDetails的最低价格。

这是我的视图模型:

var model = new ViewModelProductOverview() 
     { 
      Products = new ProductRepository().GetProductsAvailable(Id, Index, Size), 
      Category = new CategoryRepository().Get(Id), 
      CurrentPageID = page.HasValue ? page.Value : -1 
     }; 

我的观点:

@{ 
      var i = 0; 

      foreach (var product in Model.Products) 
      { 
       var position = ""; 
       switch (i) 
       { 
        case 0: position = "first"; 
         break; 
        case 1: position = "second"; 
         break; 
        case 2: position = "third"; 
         break; 
        default: i = 0; position = "first"; 
         break; 
       } 

      <li class="@position"><a href="@Url.Action("Detail", "Product", new { productseourl = product.Name.ToSeoUrl(Sign.Minus), productid = product.ID })" > 
      </a> 
       <table> 
        <tr> 
         <td> 
          @product.Name @product.FabricType.Name 
         </td> 
         <td style="text-align: right;"> 
          //Its lowest price need to come here 
         </td> 
        </tr> 
        <tr> 
         <td> 
          @product.SubCategory.Name 
         </td> 
         <td style="text-align: right;"> 
          //Promotion price 
         </td> 
        </tr> 
       </table> 
      </li> 
       i++; 
      } 
     } 
+0

只是代码一点点(类的轮廓)将使这一个很容易回答。 – 2012-02-12 13:56:41

+0

我已更新代码示例。 – Wartodust 2012-02-12 14:09:51

+0

ASPX不会有太大的帮助。 – 2012-02-12 17:38:01

基本上,

var minPrice = allProducts.Details.Select(d => d.Price).Min(); 

var cheapestDetail = allProducts.Details.OrderBy(d => d.Price).First(); 
+0

问题是,我需要获取列表中每个产品的这些信息。 – Wartodust 2012-02-12 15:04:36

+0

问题是我们不知道你的课程。 – 2012-02-12 17:38:36

+0

你想看到什么代码?我的模特?我为每个实体使用repositorys来获取我的集合。 – Wartodust 2012-02-12 19:13:27