Мое мнение, что пользователь вводит значения в форму. Эти значения передаются контроллеру, в котором я использую dbset для создания новой строки в моей таблице. Существует одно поле, которое служит флагом для этой строки, который я не хочу, чтобы пользователь определял/даже знал, что существует. Мой вопрос в том, как я могу присвоить данные этому полю и передать его контроллеру без необходимости ввода данных? В этом случае я хочу, чтобы поле ACTION_TYPE было присвоено значение/строка «Добавить».Назначить статическое значение полю в модели
Посмотреть
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
var action = Html.HiddenFor(model => model.ACTION_TYPE.ToString());
string val = "Add";
if (action == null){
action = MvcHtmlString.Create(val);
}
Контроллер
public ActionResult Create()
{
return View();
}
//
// POST: /Table8/Create
[HttpPost]
public ActionResult Create(HOLIDAY_DATE_TABLE holiday_date_table, tbl8_update_transactions tbl8_update_transaction)
{
if (ModelState.IsValid)
{
db.HOLIDAY_DATE_TABLE.Add(holiday_date_table);
db.SaveChanges();
db.tbl8_update_transactions.Add(tbl8_update_transaction);
db.SaveChanges();
return RedirectToAction("../Billing/HolidayDateTable");
}
return View(holiday_date_table);
}
Столы
CREATE TABLE HOLIDAY_DATE_TABLE
(
HID INT IDENTITY PRIMARY KEY,
TABLE_NUMBER nchar(2) NOT NULL,
HOLIDAY_DATE nchar(8) NOT NULL,
FIELD_DESCRIPTION nVARchar(43) NULL,
ACTION_TYPE nchar(6) NULL
);
CREATE TABLE tbl8_update_transactions
(
TID INT IDENTITY PRIMARY KEY,
TABLE_NUMBER nchar(2) NOT NULL,
HOLIDAY_DATE nchar(8) NOT NULL,
FIELD_DESCRIPTION nVARchar(43) NULL,
ACTION_TYPE nchar(6) NULL,
HID int,
FOREIGN KEY (HID) REFERENCES HOLIDAY_DATE_TABLE (HID) ON DELETE CASCADE
);
Создайте viewmodel, чтобы достичь того, чего вы хотите. – marcoaoteixeira