0

我試圖在MVC應用程序中使用實體框架實現遠程驗證。我需要幫助,試圖定義動作簽名和適當的路由配置。我在我的模型下面的類:參數名稱中帶有句點的MVC路由

​​

}

我有用於包含幾個上述對象的視圖一個視圖模型。

public class FiscalReportVM 
{ 
    public FiscalReports CurrentFR { get; set; } 
    public FiscalReports ReportedToDate { get; set; } 
    public FiscalReports BudgetToDate { get; set; } 
} 

驗證動作是在FiscalReports控制器如下:

public JsonResult ValidateSalary(int Salaries, short FiscalYear, int Counter) 
    { 
     return ValidateFiscalField(Salaries, FiscalYear, Counter, "Salaries"); 
    } 

在視圖我使用的HTML輔助

@Html.EditorFor(model=>model.CurrentFR.Salaries) 

這正確地產生場和驗證。生成的HTML低於

input data-val="true" data-val-number="The field Salaries must be a number." data-val-remote="'Salaries'; is invalid." data-val-remote-additionalfields="*.Salaries,*.Counter,*.FiscalYear" data-val-remote-url="/FiscalReports/ValidateSalary" name="CurrentFR.Salaries" type="number" value="" /> 

驗證請求被正確啓用和提琴手我看到了以下要求:

http://localhost:50409/FiscalReports/ValidateSalary?CurrentFR.Salaries=27000&CurrentFR.Counter=4773&CurrentFR.FiscalYear=2 

我的問題是,我有確定的路線和行動中虛線變量的麻煩符號。動作定義不接受虛線參數(不能做ValidateSalary(int CurrentFR.Salaries,....)。我需要幫助來試圖定義動作簽名和適當的路由配置。

+0

[URL中的點導致404與ASP.NET mvc和IIS]可能重複( http://stackoverflow.com/questions/11728846/dots-in-url-causes-404-with-asp-net-mvc-and-iis) – NightOwl888

回答

1

難道你不能使用位的jQuery改名字屬性的東西來的效果:?

$(「CurrentFR.Salaries」)ATTR(「名」,「工資」)

記得有沒有什麼不同的問題並且我只是暫時在視圖中更改了名稱,然後在動作中更改了它。