ASP.NET动态内容

时间:2011-04-16 11:28:47

标签: html5 asp.net-mvc-3 web

我正在开发ASP.NET(MVC3 HTML5)网站。我需要以某种方式允许管理员编辑新闻,主页文本,促销等内容。我可以使用现有的API实现这一点吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

很简单。 创建一个界面,用于编辑您希望管理员编辑的内容,并使用[授权]属性

保护它
    //for the users    
    [Authorize]
    public ActionResult NormalUsers(int newsItemId)
    {
        //Getting content from DB.
        NewsItem news = new NewsItem(newsItemId);
        return View("ShowNews", news);
    }

    //for editors
    [Authorize(Roles = "Admin, Super User")]
    [HttpGet]
    public ActionResult AdministratorsOnly(int newsItemId)
    {
        //Getting content from DB
        NewsItem news = new NewsItem(newsItemId);
        return View("EditNews", news);
    }

    [Authorize(Roles = "Admin, Super User")]
    [HttpPost]
    public ActionResult AdministratorsOnly(NewsItem newsItem)
    {
        //Putting content in DB
        newsRepository.StoreNewsItemInDB(newsItem);
        NewsItem news = new NewsItem(newsItem.Id);//getting the newsItem from DB, to allow for server side processing. 
        return View("EditNews", news);
    }

Link to MSDN for the language details.

它的工作方式是你有两个(实际上是三个)新闻观点。 第一个视图用于为普通用户呈现NewsItem对象。

第二个视图用于获取NewsItem对象以进行编辑。 第三个视图用于在编辑后显示NewsItem对象,以确保编辑的最终结果。

将始终向用户显示最后编辑的NewsItem(与3相同)。