Мне нужно показать запись из базы данных. Но у меня есть ошибка:
«объект» не содержит определения «Логин»
Вид:
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Dodaj Pracownika</legend>
@foreach (var pr in ViewBag.dane)
{
<div>Login: @pr.Login</div>
<div>Imie: @pr.imie</div>
}
</fieldset>
}
Контроллер:
public ActionResult detail(int LoginID)
{
var user = (from p in baza.Logowanies
join d in baza.uzytkowniks on p.LoginID equals d.LoginID
where LoginID == p.LoginID
select new { p.Login, p.Haslo, p.konto, d.imie, d.nazwisko, d.pesel, d.nip, d.telefon, d.adres_zamieszkania, d.email }).ToList();
ViewBag.dane = user;
return View();
}
Это работало, когда я помещал записи из одной таблицы в базу данных (без объединения в запросе). Но сейчас что-то не так.
Использование
@grid.GetHtml
все в порядке.
//////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////////////////// ////////////////////////////////////
EDIT
Я делаю правки, и теперь у меня есть:
Вид:
@model Restauracja.Models.pracownikModel
@foreach (dynamic pr in ViewBag.dane)
{
<div>Login: @pr.Login</div>
<div>Imie: @pr.imie</div>
Модель:
public class pracownikModel
{
public LoginModel LoginModel { get; set; }
public uzytkownikModel uzytkownikModle { get; set; }
public pracownikModel() {
LoginModel = new LoginModel();
uzytkownikModle = new uzytkownikModel();
}
}
public class LoginModel
{
[Required]
public string Użytkownik { get; set; }
[Required]
public string Hasło { get; set; }
public string Konto { get; set; }
}
public class uzytkownikModel
{
[Required]
public string imie { get; set; }
[Required]
public string nazwisko { get; set; }
. . . . .
}
и контроллер:
public ActionResult Kontakt()
{
bazaDataContext baza = new bazaDataContext();
var user = (from p in baza.Logowanies
join d in baza.uzytkowniks on p.LoginID equals d.LoginID
select new pracownikModel{p.Login, d.imie}).ToList();
ViewBag.dane = user;
return View(user);
}
В контроллере у меня есть выбор
выберите новую pracownikModel {p.Login, d.imie})
и я не могу добавить
uzytkownik = p.Login, imie = d.imie
потому что insted uzytkownik и imie у меня есть LoginModel или uzytkonikModel.
У меня есть
выберите новый pracownikModel {...}
и у меня ошибка:
Не удалось инициализировать тип «Restauracja.Models.pracownikModel» с помощью инициализатора коллекции, поскольку он не реализует «System.Collections.IEnumerable»