在 asp.net mvc 中,如果我有如下模型:
public class MyModel
{
public string Name {get; set;}
public string MySecretProperty {get { return "123"; } }
}
在我的控制器中:
MyModel model = new MyModel();
....
RedirectToAction("home", model);
生成的 URL 将是:
home?Name=xyz&MySecretPropert=123
有没有办法使用属性隐藏属性以显示在查询字符串中?我仍然想在视图中使用该属性并希望它保留模型的一部分,但只是不想在查询字符串中显示它。
我能想到的唯一选择是创建另一个类而不包括其中的秘密属性,然后使用该类进行重定向,然后通过使用自动映射器或类似工具映射属性再次重建完整模型。
有什么优雅的方法吗?一个属性将非常适合像 [HideDuringRedirect] 这样的属性。