提交按钮不适用于mvc 5中的下拉列表

时间:2016-11-06 15:02:10

标签: c# asp.net-mvc button submit

我是mvc的新人。我的项目有问题。我首先使用代码为我的两个数据表和脚手架。我的第一个数据表一切都很好,但是当我尝试使用foreignkey向第二个表添加信息时,KlasaId" (第一个表格中的下拉列表),提交按钮不起作用。这是我的第一个表的代码:

namespace dziennik.Models
{
public class Klasa
{
    public int KlasaId { get; set; }

    public string NAZWA { get; set; }

    public int Rok_szkolny { get; set; }

    public virtual ICollection<Uczen> Uczen { get; set; }

}
}

CREATE TABLE [dbo].[Klasa] (
[KlasaId]     INT          IDENTITY (1, 1) NOT NULL,
[NAZWA]       NVARCHAR (2) NOT NULL,
[Rok_szkolny] INT          NOT NULL,
CONSTRAINT [PK_dbo.Klasa] PRIMARY KEY CLUSTERED ([KlasaId] ASC)
);

第二张表:

namespace dziennik.Models
{
public class Uczen
{
    public int UczenId { get; set; }

    public int KlasaId { get; set; }

    .
    .
    .

    public virtual Klasa Klasa { get; set; }

}
}

CREATE TABLE [dbo].[Uczen] (
[UczenId]         INT            IDENTITY (1, 1) NOT NULL,
[KlasaId]         INT            NOT NULL,
.
.
.
CONSTRAINT [PK_dbo.Uczen] PRIMARY KEY CLUSTERED ([UczenId] ASC),

CONSTRAINT [FK_dbo.Uczen_dbo.Klasa_KlasaId] FOREIGN KEY ([KlasaId])
REFERENCES [dbo].[Klasa] ([KlasaId]) ON DELETE CASCADE
);

GO
CREATE NONCLUSTERED INDEX [IX_KlasaId]
ON [dbo].[Uczen]([KlasaId] ASC);

的DbContext:

public class UczniowieContext : DbContext

{
    public UczniowieContext() :base("UczniowieConnection")
    { }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Uczen>().ToTable("Uczen");
        modelBuilder.Entity<Klasa>().ToTable("Klasa");
    }

    public DbSet<Klasa> Klasy { get; set; }
    public DbSet<Uczen> Uczniowie { get; set; }

}

控制器:

// GET: DodawanieUzytkownika1/Create
public ActionResult Create()
{
    ViewBag.KlasaId = new SelectList(db.Klasy, "KlasaId", "NAZWA");
    return View();
}

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "UczenId,KlasaId,Imie_ucz,Nazwisko_ucz,Pesel,Data_ur_ucz,Miejsce_ur,Adres_zam,Imie_opiek_rodz,Kontakt")] Uczen uczen)
{
    if (ModelState.IsValid)
    {
        db.Uczniowie.Add(uczen);
        db.SaveChanges();
        return RedirectToAction("Index");
    }

    ViewBag.KlasaId = new SelectList(db.Klasy, "KlasaId", "NAZWA", uczen.KlasaId);
    return View(uczen);
    }

查看:

<div class="form-group">
@Html.LabelFor(model => model.KlasaId, "KlasaId",    htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownList("KlasaId", null, htmlAttributes: new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.KlasaId, "", new { @class = "text-danger" })
 </div>
 </div>

0 个答案:

没有答案