bubai banerjee Ответов: 1

Я хочу отобразить результат с помощью MVC4


В моем приложении MVC,
я хочу отобразить результат (когда я ввожу приложение no в текстовое поле Id, оно будет отображать имя клиента, фамилию,адрес в соответствующих текстовых полях
вместо того,чтобы отображать его в webgrid, на той же странице с помощью EF.
я использую mvc4, visual studio 2012 и EF.Заранее спасибо.Кто-нибудь может пожалуйста помочь мне.

Что я уже пробовал:

создан Entity framework из таблицы базы данных "tblCustomer".Создал один ActionResult,но не работает так, как я ожидал.
я искал в google, нашел после того, как результат поиска отобразился в webgrid.

но я хочу, чтобы при вводе приложения no в текстовое поле Id оно отображало имя клиента, фамилию,адрес в соответствующих текстовых полях
вместо того,чтобы отображать его в webgrid, на той же странице с помощью EF.
Кв.; Стол:
Создайте таблицу [dbo].[tblCustomer](
[Id] [int] IDENTITY (1,1) NOT NULL,
[FirstName] [varchar] (50) NULL,
[Фамилия] [varchar] (50) NULL,
[Адрес] [varchar] (50) NULL,
Ограничение [PK_tblCustomer] первичный ключ КЛАСТЕРИЗОВАН
(
[Id] ASC
)С (КАК = ВЫКЛ, STATISTICS_NORECOMPUTE = OFF, ТО ЗНАЧЕНИЕ IGNORE_DUP_KEY = OFF, ТО ПАРАМЕТРЫ ALLOW_ROW_LOCKS = ON, ТО ALLOW_PAGE_LOCKS ИНСТРУКЦИИ =) НА [ОСНОВНОЙ]
) НА [ПЕРВИЧНОМ]

индексированное представление:

Индекс



@использование (@HTML-код.Бигинформ("Индекс","Дом",FormMethod.Почта))
{
в <текст&ГТ;введите код :@HTML-код.Текстовое Поле("Код")
в <тип входного="отправить" название="Поиск" значение="Поиск" /&ГТ;
}

Домашний контроллер

[HttpGet]
индекс public ActionResult()
{
возвращение смотреть();
}

[HttpPost]
public ActionResult Index(int Id)
{
var qry = se.tblCustomers.Один(М =&ГТ; м. Код == Код);
return View ("_Details", qry);
}

подробное представление:


tblCustomer


@HTML-код.DisplayNameFor(модель =&ГТ; модель.имя)


@HTML-код.DisplayFor(модель =&ГТ; модель.имя)



@HTML-код.DisplayNameFor(модель =&ГТ; модель.фамилия)


@HTML-код.DisplayFor(модель =&ГТ; модель.фамилия)



@HTML-код.DisplayNameFor(модель =&ГТ; модель.Адрес)


@HTML-код.DisplayFor(модель =&ГТ; модель.Адрес)


1 Ответов

Рейтинг:
2

Member 11114915 - Tanvi

Чтобы отобразить результат в соответствующих текстовых полях, пожалуйста, используйте TextBoxFor вместо DisplayFor.

Изменения PFB, необходимые в детальном представлении.

подробное представление:


@model CodePrjctQues.Модели.tblCustomer

@{
Видовая сумка.Title = " Подробности";
}

Подробности




tblCustomer


@HTML-код.DisplayNameFor(модель =&ГТ; модель.имя)


@HTML-код.TextBoxFor(модель =&ГТ; модель.имя)



@HTML-код.DisplayNameFor(модель =&ГТ; модель.фамилия)


@HTML-код.TextBoxFor(модель =&ГТ; модель.фамилия)



@HTML-код.DisplayNameFor(модель =&ГТ; модель.Адрес)


@HTML-код.TextBoxFor(модель =&ГТ; модель.Адрес)




Я надеюсь, что это решит вашу проблему.


bubai banerjee

Спасибо, Танви.

поскольку я использую частичное представление "_Details", оно перенаправляет меня на следующую страницу,
но, я хочу, когда я ввожу id, он будет отображать результат на той же странице,а не на 2-й странице.
пожалуйста, подскажите, как действовать дальше.

Member 11114915 - Tanvi

Вместо использования вернуть вид("_Details", qry по) , пожалуйста, используйте обратный вид(qry ПО); а также добавить ниже на индексном просмотре.

<fieldset>
tblCustomer

< div class= "display-label">
@HTML-код.DisplayNameFor(модель =&ГТ; модель.имя)
< / div>
< div class= "display-field">
@HTML-код.TextBoxFor(модель =&ГТ; модель.имя)
< / div>

< div class= "display-label">
@HTML-код.DisplayNameFor(модель =&ГТ; модель.фамилия)
< / div>
< div class= "display-field">
@HTML-код.TextBoxFor(модель =&ГТ; модель.фамилия)
< / div>

< div class= "display-label">
@HTML-код.DisplayNameFor(модель =&ГТ; модель.Адрес)
< / div>
< div class= "display-field">
@HTML-код.TextBoxFor(модель =&ГТ; модель.Адрес)
< / div>
< / fieldset>