2013-08-20 50 views
1

我在我的數據庫中有很多具有複合主鍵的表。當我從我的模型生成一個控制器時,我總是得到只有一個參數的方法。例如:使用複合主鍵生成控制器

public ActionResult Edit(string id = null) 
{ 
    ... 
} 

但我想達到的目標是讓我的控制器生成的方法的所有參數的主鍵,這樣的事情:

public ActionResult Edit(string pk1 = null, string pk2 = null, ...) 
{ 
    ... 
} 

在現階段,我要改變每一個控制器。
是否有可能以某種方式生成這種類型的控制器?

回答

0

腳手架模板(T4)位於[Visual Studio Directory]\Common7\IDE\ItemTemplates\CSharp\Web\[MVC Version]\CodeTemplates\AddController。您可以修改或複製這些模板並將其導入到項目中並進行適當的修改,或者也可以創建全新的模板。這裏是valuable tutorial如何當你定義你的模型來實現這一

-1

使用關鍵屬性

using System; 
using System.Collections.Generic; 
using System.ComponentModel.DataAnnotations; 
using System.Linq; 
using System.Web; 

namespace demomvc.Models 
{ 
    public class MultipleKeyModel 
    { 
     [Key] 
     public int Key1 { get; set; } 
     [Key] 
     public int Key2 { get; set; } 
     [Key] 
     public int Key3 { get; set; } 
     public string Foo { get; set; } 
    } 
}