Как использовать методы в MVC 3 движке aspx и как использовать управление повторителем в MVC 3? - PullRequest
1 голос
/ 22 марта 2012

Я новичок в asp.net Mvc.Я пытаюсь сделать некоторые упражнения, чтобы выучить это.Мои образцы в этой ссылке: http://weblogs.asp.net/scottgu/archive/2007/12/06/asp-net-mvc-framework-part-3-passing-viewdata-from-controllers-to-views.aspx

Я делаю тот же образец, используя эту ссылку:

enter image description here

Мой ВИД:


<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" CodeBehind="~/Views/Product/ListProducts.aspx.cs" AutoEventWireup="true"  Inherits="MvcAppExtNet.Views.Product.ListProducts" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    ListProducts
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

<h2>ListProducts</h2>


</asp:Content>

<asp:Content ID="Content3" ContentPlaceHolderID="head" runat="server">
</asp:Content>

<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
<asp:Repeater ID="ProductList" runat="server">
<ItemTemplate>
<li>
<%#Eval("Name") %>
</li>
</ItemTemplate>
</asp:Repeater>
</asp:Content>

МОЙ КОНТРОЛЛЕР:

namespace MvcAppExtNet.Controllers
{
    public class ProductController : Controller
    {
        //
        // GET: /Product/

        public void GetProduct()
        {
            List<Products> list = new List<Products>() { 
                new Products() { Id = 1, Name = "Hıyar" }, 
                new Products() { Id = 2, Name = "Kereviz" } };

            ViewData["Products"] = list;
        }

    }
}

если вы посмотрите ListProducts.aspx.cs:

enter image description here

Как просмотреть мой элемент управления Repeater (ProductList - это своего рода повторитель!!!!) на кодах C #?Также как использовать методы (Not Using ActionResult)?Большое спасибо.

Ответы [ 3 ]

3 голосов
/ 22 марта 2012

MVC 3 не имеет элементов управления и состояния просмотра.Если вы задаете этот вопрос, то вам не хватает некоторых фундаментальных знаний о шаблоне MVC, поэтому я предлагаю вам пройтись по учебникам по http://www.asp.net/mvc

3 голосов
/ 22 марта 2012

MVC работает немного иначе, чем веб-формы.Вы не используете элементы управления в своих представлениях, а MVC не имеет элемента управления повторителем.У него есть привязка к модели и Razor, что дает вам гораздо больший контроль.

Немного прочитав, вы скоро обдумаете это.Я бы предложил вам начать здесь

Удачи

2 голосов
/ 22 марта 2012

Этот вопрос был помечен в ASP.NET MVC3, поэтому я собираюсь ответить на него как таковой.

Пройдите по многим учебникам в http://www.asp.net/mvc. Это действительно захватывающая структура, япредпочитаю это веб-формам.Начните с MVC3.

Способ, которым это должно быть сделано, заключается в том, что контроллер получает список продуктов из базы данных, выполняя вызов хранилища.Контроллер берет этот список продуктов и передает его на просмотр.Представление представит это.В основном это то, как я бы это сделал:

Класс продукта:

public class Product
{
     public int Id { get; set; }
     public string Name { get; set; }
}

Моя модель просмотра:

public class ProductListViewModel
{
     IEnumerable<Product> Products { get; set; }
}

В моем методе действия в контроллере я делаювызов базы данных для возврата товаров.Затем я создаю экземпляр нового объекта модели представления и задаю свойству Products список, который был возвращен из базы данных:

public ActionResult List()
{
     ProductListViewModel viewModel = new ProductListViewModel
     {
          Products = productRepository.GetAllProducts()
     };

     return View(viewModel);
}

И, на мой взгляд, у меня будет следующее:

<table>

@foreach(Product product in Model.Products)
{
     <tr>
          <td>Product Name:</td>
          <td>product.Name</td>
     </tr>
}

</table>

Надеюсь, я все прояснил для тебя.Это всего лишь руководство, используйте его и измените его соответствующим образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...