1

是否有可能有一个返回多个值的公共方法,然后调用该方法只检索您想要的值?

public static string Values()
{
    string length = DAL.Util.getlength();
    string Name = DAL.Util.getName(ddlID.SelectedValue);
    return length + Name;
}

现在我知道我是否要通过说来调用此方法

string a = Values();

它会返回长度和名称的串联字符串,但无论如何,即使它有 10 个变量长,是否也只能从该方法调用特定变量?

感谢您提供的任何建议和帮助。

4

3 回答 3

3

听起来您实际上应该返回对包含各种不同状态位的对象的引用,而不是返回单个字符串。然后调用者可以决定他们真正感兴趣的状态位,并直接检索这些属性。

于 2012-08-16T14:31:16.283 回答
1

您可以返回一个包含您需要的所有值的对象。

例如

public class MyClass
{
   public string Length { get; set; };
   public string Name { get; set; };
}

然后你可以从你的函数中返回这个对象:

public static MyClass Values()
{
    MyClass myClass = new MyClass();
    MyClass.Length = DAL.Util.getlength();
    MyClass.Name = DAL.Util.getName(ddlID.SelectedValue);
    return MyClass;
}

然后,您可以获得所需的任何属性:

MyClass myClass = Values();

string name = myClass.Name;
于 2012-08-16T14:32:41.930 回答
0

听起来你真正想要的是一个结构(或一个类)

public struct MyStruct
{
    public string length
    public string name
}

public static MyStruct Values()
{
    MyStruct result;
    result.name = DAL.Util.getName(ddlID.SelectedValue);
    result.length = DAL.Util.getlength();
    return (result);
}

然后,您可以根据需要查看结构的不同元素。

MyStruct data = Values();
Console.WriteLine(data.name);
Console.WriteLine(data.length);
于 2012-08-16T14:33:06.300 回答