C# 如何创建列表<;长期>;从一个长变量?

C# 如何创建列表<;长期>;从一个长变量?,c#,collections,C#,Collections,如何将长变量转换为列表? 代码: 我需要将它转换为一个列表,因为我们的方法之一期望列表通过。所以您需要一个列表,但您只有一个变量。这很简单,您可以使用以下语法: 试试这个: List<long> somelist = new List<long>{long.Parse(LocalWorkListVM.ActiveTask.TaskId, CultureInfo.InvariantCulture)}; List-somelist=new-List{long.Parse(L

如何将长变量转换为列表? 代码:

我需要将它转换为一个
列表
,因为我们的方法之一期望列表通过。

所以您需要一个
列表
,但您只有一个变量。这很简单,您可以使用以下语法:

试试这个:

List<long> somelist = new List<long>{long.Parse(LocalWorkListVM.ActiveTask.TaskId, CultureInfo.InvariantCulture)};
List-somelist=new-List{long.Parse(LocalWorkListVM.ActiveTask.TaskId,CultureInfo.InvariantCulture)};

这将创建一个新的
列表
,并用解析后的值对其进行初始化。

它真的需要是一个
列表
?如果有一种方法来修改这个方法来接受<代码> iQueabd,事情会变得更容易和更干净(或者如果<代码> iQueabd不够,可以考虑<代码> IISTIS/COD>)。 考虑到这一点,你有很多选择

您可以使用
Enumerable
class'静态方法
Repeat

Enumerable.Repeat(taskId, 1);
您可以编写自己的扩展方法:

static class IEnumerableExtensions
{
    public static IEnumerable<T> ToEnumerable<T>(this T item)
    {
        yield return item;
    }
}
// and use it as:
taskId.ToEnumerable()
最后,还有一个很好的关键字叫做
params

public void MyMethod(params long[] items)
{
    // call to the previously mentioned extension method
    MyMethod(items.ToEnumerable());
}

public void MyMethod(IEnumerable<long> items)
{
    // Do stuff
}
public void MyMethod(参数long[]项)
{
//调用前面提到的扩展方法
MyMethod(items.ToEnumerable());
}
公共无效方法(IEnumerable items)
{
//做事
}

此解决方案的优点是使用单个
long
参数、逗号分隔的
long
参数或
IEnumerable

您所说的
long
列表
是什么意思?
List
是一个集合,
long
是一个单变量。什么是“转换为”,你是说“添加到”吗?是的,long是一个单变量。我需要把它转换成一个列表,因为我们的一个方法需要一个列表pass@Sandeep请编辑您的问题标题以明确您的要求。就目前而言,不阅读你的评论是没有意义的。
Enumerable.Repeat(taskId, 1);
static class IEnumerableExtensions
{
    public static IEnumerable<T> ToEnumerable<T>(this T item)
    {
        yield return item;
    }
}
// and use it as:
taskId.ToEnumerable()
public void MyMethod(List<long> list)
{
    // Do something
}

public void MyMethod(long item)
{
    MyMethod(new List<long>{ item });
}
public void MyMethod(params long[] items)
{
    // call to the previously mentioned extension method
    MyMethod(items.ToEnumerable());
}

public void MyMethod(IEnumerable<long> items)
{
    // Do stuff
}