SportStore项目

一、分析

我们的应用程序,SportsStore,到处都遵循经典在线商店所采用的方法。我们将创建一个在线产品目录,客户可以按类别浏览页面,购物车用户可以在其中添加和删除产品,并检出客户可以在其中输入发货详细信息。 我们还会创建一个管理区域,包括创建、读取、更新和删除管理目录的设施,我们会保护它,以便只有登录管理员可以使变化。

一个类只要实现了IProductRepository就可以拥有Product对象了。这就是仓库模式的精华。其实现原理是下面的代码:

public interface IProductsRepository
    {
         IQueryable<Product> Products { get; }
    }

 我们将再次访问该接口在整个开发过程以添加功能.第一部分主要实现了网站的布局和商品列表以及分页

第二部分的任务

  • 提高ProductController类的List操作模式,使它能够筛选产品库中的对象。

  •审视和加强我们的URL方案和修改路由策略。

  •创建类别列表,将其放到网站的侧边栏,让选中的链接显示高亮,以区分与其它链接的不同。

对比RenderPartial和RenderAction

RenderPartial通常是作为某个页面的一个部分,和某个页面公用同一个model。本例子中是公用的Viewmodel。

Html.RenderPartial("ProductSummary",p);
//下面为其方法的签名,其中ProductSummary是可以说是部分网页
public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName, object model);

RenderAction通常用作有提交动作,且多个Controllers都可以接受action的场合,一般在_layout.cshtml文件里调用。下面给出其调用形式和函数签名: 

@{ Html.RenderAction("Menu", "Nav"); }
public static void RenderAction(this HtmlHelper htmlHelper, string actionName, string controllerName);

上面二者的共同点是添加视图是都是选择“创建为部分视图”

在视图中用@class类区分html中和c#中的class。

原文地址:https://www.cnblogs.com/lzhp/p/2875875.html