zoukankan      html  css  js  c++  java
  • .Net强类型视图

    1.控制器 Controllers/StoreController.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    using mvcDemo.Models; // 引入Models
    
    namespace mvcDemo.Controllers
    {
        public class StoreController : Controller
        {
            // GET: Store
            public string Index()
            {
                return "Hello from Store.Index()";
            }
    
            // GET: Store
            public string Browse(string genre)
            {
                string message = HttpUtility.HtmlEncode("Genre =" +genre);
                return message;
            }
    
            // GET: Store
            public string Details(int id)
            {
                string message = "Store.Details,ID = " + id;
                return message;
            }
    
            public ActionResult List()
            {
                var albums = new List<Album>();
                for (int i = 0;i<10;i++)
                {
                    albums.Add(new Album { Title = "Album "+ i});
                }
                return View(albums);
            }
        }
    }
    

    2.Models Models/Album.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    namespace mvcDemo.Models
    {
        public class Album
        {
            public virtual int AlbumId { get; set; }
            public virtual int GenreId { get; set; }
            public virtual int ArtistId { get; set; }
            public virtual string Title { get; set; }
            public virtual decimal Price { get; set; }
            public virtual string AlbumArtUrl { get; set; }
            public virtual Genre Genre { get; set; }
            public virtual Artist Artist { get; set; }
        }
    }
    

    3.视图层 Views/Store/List.cshtml

    
    @{
        ViewBag.Title = "List";
    }
    @model IEnumerable<Album>
    <ul>
    @foreach (Album p in Model)
    {
        <li>@p.Title</li>
    }
    </ul>
    
    
    

    4.配置命名空间 Views/Web.config

    <?xml version="1.0"?>
    
    <configuration>
      <configSections>
        <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
          <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
          <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
        </sectionGroup>
      </configSections>
    
      <system.web.webPages.razor>
        <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <pages pageBaseType="System.Web.Mvc.WebViewPage">
          <namespaces>
            <add namespace="System.Web.Mvc" />
            <add namespace="System.Web.Mvc.Ajax" />
            <add namespace="System.Web.Mvc.Html" />
            <add namespace="System.Web.Optimization"/>
            <add namespace="System.Web.Routing" />
            <add namespace="mvcDemo.Models" /> <!-- 增加命名空间 -->
            <add namespace="mvcDemo" />
          </namespaces>
        </pages>
      </system.web.webPages.razor>
    
      <appSettings>
        <add key="webpages:Enabled" value="false" />
      </appSettings>
    
      <system.webServer>
        <handlers>
          <remove name="BlockViewHandler"/>
          <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
        </handlers>
      </system.webServer>
    
      <system.web>
        <compilation>
          <assemblies>
            <add assembly="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
          </assemblies>
        </compilation>
      </system.web>
    </configuration>
    
    

    点评,这里的传递要比ViewBag更加方便!

  • 相关阅读:
    blocking to nonblocking of Python
    hug -- Embrace the APIs of the future
    supplychain on blockchain
    xstate -- JavaScript state machines and statecharts
    计算PI -- 采用刘徽的割圆术方法
    Gunicorn
    AIOHTTP
    APScheduler
    prefect
    FastAPI
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/6877448.html
Copyright © 2011-2022 走看看