在我的 asp.net mvc 页面中,我想调用 RedirectToAction(actionName, controllerName, values)。
values 参数是一个包含所有必要值的对象。例子
return RedirectToAction(redirectAction, redirectController,
new{ personId = foundId,
personEmail = foundEmail,
personHeigh = foundHeight});
这一切都很好,如果这些参数都不是 null 或空字符串。发生这种情况时,System.Uri.EscapeDataString(String stringToEscape) 会引发 ArgumentNullException。
问题是我在编译时不知道哪些参数将为空。此外,我不希望为 notnull 值的每个可能组合创建一个对象。
在我的示例中只有三个参数,但如果有 10 个呢?可能的组合呈指数增长。由于无法将字段添加到匿名类型,因此我也无法将参数一一添加。
我该如何解决这个问题?