我有一個返回如何讀取匿名類型的屬性?
return new System.Web.Mvc.JsonResult()
{
Data = new
{
Status = "OK",
}
}
我需要編寫一個單元測試,其中我需要驗證jsonResult.Data.status= "OK"
的方法。
如何讀取狀態屬性?
更新: 我試過[程序集:InternalsVisibleTo(「TestingAssemblyName」)],但沒有幫助。我不斷收到錯誤{「'System.Web.Mvc.JsonResult'不包含'狀態'的定義。」}
除了我想我不想修改我測試的代碼。
所以我採取了喬恩的建議和反思。
var type = jsonResult.Data.GetType();
var pinfo = type.GetProperty("Status");
string statusValue = pinfo.GetValue(jsonResult.Data,null).ToString();
Assert.AreEqual("OK", statusValue);
在MS單元測試或JavaScript? –
如果你是從C#開始做這件事的話,你可以使用'dynamic'並讓動態綁定器來處理它。 – vcsjones
gallio單元測試。我正在嘗試的是Assert.AreEqual(「OK」,jsonResult.Data.Status) – developer747