Как отобразить данные таблицы или передать данные просмотра на странице site.master в asp mvc2 - PullRequest
1 голос
/ 04 июля 2011

Я хочу показать свои данные таблицы на странице site.master и отобразить эти данные. Все методы действия, пожалуйста, помогите мне или дайте мне пример кода, моя модель и код контроллера здесь

    namespace DomainModel.Entities
  {

    [Table(Name = "Requirements")]
public class Requirement

  {
public int  RequirementID{ get; set; }
 [Column] public int Experience { get; set; }
 [Column] public string JobTitle { get; set; }
 [Column] public string Qualification { get; set; }
 [Column] public string Location { get; set; }
 [Column] public int Budget { get; set; }
 [Column] public DateTime Date { get; set; } 
      }

       }

мой репозиторийкод здесь

namespace DomainModel.Concrete
 {
public class SqlCandidateRepository : ICandidateRepository
{

 private Table<Requirement> Requirementtable;

  public SqlCandidateRepository(string connectionString)
    {

  Requirementtable = (new DataContext(connectionString)).GetTable<Requirement>();

   public IQueryable<Requirement> NewRequirement()
    { 
    return  from d in Requirementtable where d.Date>=System.DateTime.Now select d;

    }

вот мой код контроллера

  public ActionResult ShownewRequirement()
    {

     ViewData[" requirement"] = IcandidateRepository.NewRequirement();
      return View();

    }

1 Ответ

0 голосов
/ 04 июля 2011

+ 1 Хороший вопрос.

Поскольку на мастер-страницы не берут никаких моделей. Чтобы иметь возможность доступа к данным из ваших главных страниц, используйте ViewData (или ViewBag, если ASP.NET MVC3) в базовом контроллере.

Во всех контроллерах, которые будут использовать эту главную страницу в заполняемых ими представлениях, я делаю эти контроллеры дочерними по отношению к базовому контроллеру, назовем его BaseController.

Пример:

public abstract class BaseController : Controller
{
    public BaseController()
    {
        ViewData["MyName"] = "LordCover";
    }
}

Теперь в разметке вашей главной страницы вы можете использовать это:

<h2>Hello <%: ViewData["MyName"] %>!</h2>

Вывод будет:

Привет, ЛордКовер!

Повторюсь, чтобы все ваши контроллеры получили преимущество от этого контроллера, они должны наследовать его.

Надеюсь, это поможет.

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