小编dur*_*rsk的帖子

LINQ搜索特定字符串的字符串数组列表

我有一个字符串数组列表:

List<String[]> listOfStringArrays = something;
Run Code Online (Sandbox Code Playgroud)

我需要从集合中选择所有对象,其值等于列表中任何字符串数组的第0个索引处的字符串.

例如,如果我只有一个简单的字符串列表,声明为:

List<String> listOfStrings = something;
Run Code Online (Sandbox Code Playgroud)

我会这样做:

var query = someCollection.Where(x => listOfStrings.Contains(x.id_num))
Run Code Online (Sandbox Code Playgroud)

但显然,字符串数组列表并不那么简单.

我知道我可以轻松地遍历字符串数组列表并创建一个带有第0个值的简单字符串列表,如下所示:

List<String[]> listOfStringArrays = something;
List<String> listOfValues = new List<String>();

foreach (string[] s in listOfStringArrays)
    listOfValues.Add(s[0]);

var query = someCollection.Where(x => listOfValues.Contains(x => x.id_num);
Run Code Online (Sandbox Code Playgroud)

但是我真的想避免这种情况,并试图将其写成一个内衬而不引入额外的列表和循环.

c# linq arrays

5
推荐指数
1
解决办法
2万
查看次数

在日期时间范围之间提供课堂时间

我使用的是Oracle 11g,我遇到了这个问题.我无法想出任何解决它的想法.

我有一张带有教室的桌子.我需要找到的是日期时间范围之间的可用时间.例如,我有房间A,B和C,被占用教室的桌子如下所示:

Classroom        start                 end  
   A         10/10/2013 10:00      10/10/2013 11:30  
   B         10/10/2013 09:15      10/10/2013 10:45  
   B         10/10/2013 14:30      10/10/2013 16:00  
Run Code Online (Sandbox Code Playgroud)

我需要得到的是这样的:

with date time range between '10/10/2013 07:00' and '10/10/2013 21:15'

Classroom    avalailable_from        available_to  
   A         10/10/2013 07:00      10/10/2013 10:00  
   A         10/10/2013 11:30      10/10/2013 21:15  
   B         10/10/2013 07:00      10/10/2013 09:15  
   B         10/10/2013 10:45      10/10/2013 14:30  
   B         10/10/2013 16:00      10/10/2013 21:15  
   C         10/10/2013 07:00      10/10/2013 21:15  
Run Code Online (Sandbox Code Playgroud)

有没有办法用sql或pl/sql来实现?

sql oracle datetime plsql

4
推荐指数
1
解决办法
1747
查看次数

在使用块内部,需要处理并重新实现

我正在尝试使用EF增强将数千行写入数据库的性能.我发现SaveChanges()的速度会在单个上下文中随着时间的推移而降低,并且在n个插入之后处理和重新创建上下文可以帮助解决这个问题.

using(Context context = new Context())
{
    for(int i = 0; i < numberOfLines; i++)
    {
        context.Collection.AddObject(line);
        if (i % 100 == 0)
        {
            context.SaveChanges()
            // Here I would like to call dispose on context and then create a new one
        }
     }
}
Run Code Online (Sandbox Code Playgroud)

当然,我需要使用或执行类似的操作,因为还有很多事情要发生,我需要确保在任何时候抛出异常时都会调用dispose.

有任何想法吗?我知道我可以在try块之外声明上下文,然后使用context.Dispose()得到一个finally.我显然不想这样做.

编辑:我意识到我发布的代码片段并没有完全显示我为什么要这样做.for循环在IF语句之外的其他位置调用context.SaveChanges().因此,当IF评估为true时,我已经多次调用SaveChanges().

c# linq entity-framework

2
推荐指数
1
解决办法
278
查看次数

如何将字符串连接到int*?

我正在练习使用C#中的指针(通过不安全的代码).所以现在,我只想将""连接到一个int*,所以我可以将它用作参数Console.WriteLine().

    static void Main(string[] args)
    {
        fullOfPointers();
    }
    static unsafe void fullOfPointers()
    {
        int value = 10;
        int* adress = &value;
        Console.WriteLine(&value+"");//error
        Console.ReadLine();
    }
Run Code Online (Sandbox Code Playgroud)

但编译器说运算符'+'不能用于int*和string.所以我该怎么做?

c# pointers unsafe

2
推荐指数
1
解决办法
113
查看次数

转换为字节时整数是什么样的?

我想在C#中创建一个Byte数组,第一个和第二个字节必须分别为70和75:

所以我做了类似下面的事情:

List<byte> retval = new List<byte>();
            retval.Add(Convert.ToByte(75));
            retval.Add(Convert.ToByte(70));
Run Code Online (Sandbox Code Playgroud)

我认为该函数会将数字转换为字节,如果我在运行时将监视放在arrayList上,那么它看起来会有所不同,但它没有改变.我期待看到格式为0x00的值,但它仍然看起来像原始整数.

我错过了什么吗?

c# bytearray

1
推荐指数
1
解决办法
247
查看次数

python中的类

我创建了一个名为class的类Functions,其中包含许多我定义此函数的函数:

def distance(self,seq1,seq2,seq3)
Run Code Online (Sandbox Code Playgroud)

在另一个文件中,我想调用这个类的功能.

我定义了三个DNA序列:

a=Functions()
a.distance(seq1,seq2,seq3)
Run Code Online (Sandbox Code Playgroud)

当我尝试呼叫时Functions(),我收到以下错误:

name 'Functions' is not defined
Run Code Online (Sandbox Code Playgroud)

python class

0
推荐指数
1
解决办法
58
查看次数

标签 统计

c# ×4

linq ×2

arrays ×1

bytearray ×1

class ×1

datetime ×1

entity-framework ×1

oracle ×1

plsql ×1

pointers ×1

python ×1

sql ×1

unsafe ×1