【发布时间】:2014-05-18 19:51:26
【问题描述】:
如果我有类似的 C# 方法
public void MyMethod(object myObject, string s1, string s2, string s3, ...)
{ ... }
我需要对字符串进行值检查(if !string.IsNullOrEmpty(var)),而不是检查每个变量,因为有很多 if 检查,是有没有更通用的方法可以做到这一点?
我希望使用 ParameterInfo,直到发现您无法检索参数的值。我的参数要么是“”,要么是数字值(作为字符串)或真/假(作为字符串)——这些将进入 web.config,因此是字符串。方法变量的名称是进入 web.config 的参数名称。我正在阻止将具有 null/空值的参数写入 web.config,因此是 IsNullOrEmpty 检查。
现在我为每个方法参数提供的内容如下,只是为了让您了解格式。
string name, value;
if (!string.IsNullOrEmpty(s1))
{
name = "s1";
value = s1;
/* do stuff */
}
if (!string.IsNullOrEmpty(s2))
{
name = "s2";
value = s2;
/* do stuff */
}
/* too many of these */
【问题讨论】:
-
你为什么有
myObject?您是否只是需要找到一种更简单的方法来检查 null 或空?在这种情况下,您可以使用params string[] values并通过循环遍历它们。name和value到底是干什么用的? -
该对象用于其他目的(标识 IIS 网站),并且名称/值是 web.config 中属性的键值对,但它们都必须在这种特殊情况。
标签: c# asp.net web-config