有一個網站使用C#MVC WEB API編寫Web服務,以便移動應用程序可以使用它們存儲和檢索數據。現在有一個問題,就是在其中一個方法中有一個值需要在另一個方法中使用。我需要訪問該值。我已經使用會話處理閱讀了其他人有關同一問題的答案,但這也不是一個好方法。我應該如何得到這個價值?到目前爲止,我已經做到了。將數據存儲在WEB API中以便稍後可以使用
public Object carYears(string Carmade, string CarModel) //not working
{
List<object> list = new List<object>();
int? manid = Convert.ToInt32(Carmade);
int? modid = Convert.ToInt32(CarModel);
var md = db.des_texts.Where(x => x.TEX_ID == modid).SingleOrDefault();
var manufac = db.manufacturers.Where(x => x.MFA_ID == manid).SingleOrDefault();
var mod = (from modl in db.models
join mn in db.manufacturers on modl.MOD_MFA_ID equals mn.MFA_ID
join cd in db.country_designations on modl.MOD_CDS_ID equals cd.CDS_ID
join dt in db.des_texts on cd.CDS_TEX_ID equals dt.TEX_ID
where (mn.MFA_ID == manid) && (cd.CDS_LNG_ID == 4) && (modl.MOD_PC == 1) && (dt.TEX_TEXT == md.TEX_TEXT)
orderby mn.MFA_BRAND, dt.TEX_TEXT
select new { modl.MOD_ID, mn.MFA_BRAND, dt.TEX_TEXT, modl.MOD_PCON_START, modl.MOD_PCON_END }).FirstOrDefault();
//TempData["modelid"] = mod.MOD_ID; <-- i need this value in another method
var session = HttpContext.Current.Session;
if (session != null)
{
if (session["modelid"] == null)
session["modelid"] = mod.MOD_ID;
}
這個TempData可以用於這個目的嗎?還有一件事我已經做了會話並存儲了值,但仍然無法使用其他方法訪問此值。
我覺得要麼你應該解決這個問題的服務級別或有兩個單獨的調用或實際考慮體系結構,因爲它會危及Web Api RESTful方法。 –