0

これは私のモデルです:

public class Model {

    (...)

    [Required]
    [Display(Name = "Created By")]
    public UserProfile CreatedBy { get; set; }
    [Display(Name = "Changed By")]
    public UserProfile ChangedBy { get; set; }

}

これらのフィールドの出力を、UserProfile クラス内の Username プロパティにしたいと考えています。現在、単純な JSON 出力を実行すると、出力されるだけです

CreatedBy: null
ChangedBy null

( UserProfile クラスの ToString() メソッドをオーバーライドしてユーザー名を返そうとしましたが、役に立ちませんでした。)

jsonで出力するときにUsernameフィールドの値を取得するにはどうすればよいですか?

これは、jsonでデータを出力する方法です:

public class MyController : ApiController
{

    public List<Model> Get(string param1, string param2)
    {

        DbContext db = new DbContext();

        List<Model> list = (from d in db.Models
                               select d
                               ).ToList();


        return list;

    }
}
4

1 に答える 1

0

まず、ActionResult/JsonResult を返して Json を取得する必要があります。

public ActionResult GetJson()
{
     var result=from m in db.Models select new { CreatedBy=m.CreatedBy.Name, ChangedBy=m.ChnangedBy.Name };
     return Json(result, JsonRequestBehaviour.AllowGet)
}
于 2013-10-23T16:16:23.280 に答える