Неработающий код C # с, по-видимому, без ошибок - PullRequest
0 голосов
/ 23 июня 2018

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

    public IActionResult Submit()
    {
        return View();
    }
    [HttpPost]
    public IActionResult Submit(string inpTitle, string inpContent )
    {
        try
        {
            using (SqliteConnection con = new SqliteConnection(Startup.ConStr))
            {
                con.Open(); string strSQL = "INSERT INTO Submissions (Title, Content, SubDate, SubUserID) VALUES(@Title, @Content, @SubDate, @SubUserID)";
                using (SqliteCommand com = new SqliteCommand(strSQL, con))
                {
                    com.Parameters.Add(new SqliteParameter("@Title", inpTitle));
                    com.Parameters.Add(new SqliteParameter("@Content", inpContent));
                    com.Parameters.Add(new SqliteParameter("@SubDate", DateTime.Now.ToString("yyyy -MM-dd")));
                    com.Parameters.Add(new SqliteParameter("@SubUserID", HttpContext.Session.GetInt32("UserID")));
                }
            }
            ViewBag.Message = ".";
        }
        catch (Exception ex)
        {
            ViewBag.Error = ex.Message;
        }
        ViewBag.Error = ".";
        return View();
    }

Таблица базы данных, которую я хочу вставитьу него есть 5 столбцов, 4 из которых перечислены выше, а 5-й является основным, автоинкрементным ключом.

Это код, который у меня есть на странице отправки:

<div id="side">
<h3>@ViewBag.Error</h3>
<h1>Title</h1>
<input name="inpTitle" type="text" />
<h1>Contents</h1>
<textarea name="inpContent" rows="25" cols="75"></textarea>
&nbsp;
<div>
    <button style="width: 150px;" name="submit" type="submit"><h3>Submit</h3></button>
</div>
<p style="color: white;">@ViewBag.Message</p>

CSS используется в этом:

#side {
    width: 600px;
    float: right;
}

1 Ответ

0 голосов
/ 23 июня 2018

Я не знаю, случайно ли вы забыли поместить выполнение команды в приведенный выше код, но если это не случайность, вам нужно будет выполнить команду:
com.ExecuteNonQuery();

...