【发布时间】:2017-03-16 20:02:27
【问题描述】:
我有 ASP.NET MVC 应用程序
我有两个相对的表 Companies 和 Vacancy。
当我删除公司时,我想删除与其相关的职位空缺。
这是我的控制器
public ActionResult Delete(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
Company companies = db.Companies.Find(id);
if (companies == null)
{
return HttpNotFound();
}
return View(companies);
}
// POST: Companies/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int id)
{
Company companies = db.Companies.Find(id);
db.Companies.Remove(companies);
db.SaveChanges();
return RedirectToAction("Index");
}
这是公司表
CREATE TABLE [dbo].[Companies] (
[CompanyID] INT IDENTITY (1, 1) NOT NULL,
[CompanyName] NVARCHAR (MAX) NULL,
PRIMARY KEY CLUSTERED ([CompanyID] ASC)
);
一个职位空缺
CREATE TABLE [dbo].[Vacancies] (
[VacancyId] INT IDENTITY (1, 1) NOT NULL,
[VacancyName] NCHAR (10) NULL,
[CompanyID] INT NULL,
PRIMARY KEY CLUSTERED ([VacancyId] ASC),
CONSTRAINT [FK_Vacancies_ToTable] FOREIGN KEY ([CompanyID]) REFERENCES [dbo].[Companies] ([CompanyID])
);
我需要如何修改语法以轻松删除公司?
【问题讨论】:
-
添加级联删除到依赖表
-
ON DELETE CASCADE只是它? @johnny5 -
或者只是手动标记与空缺相关的那些
-
只需添加
ON DELETE CASCADE做工作,谢谢@johnny5 -
@johnny5 你会发布你的解决方案作为答案吗,即使它很小,它也很有用(我会说非常有用)
标签: c# asp.net asp.net-mvc entity-framework asp.net-mvc-4