小编Gab*_*abe的帖子

LINQ to Entities无法识别方法'System.String ToString()'方法

string[] userIds = userList.Split(','); // is an array of integers
IList<User> users = (from user in this.repository.Users
                     where userIds.Contains(user.Id.ToString())
                     select user).ToList();
Run Code Online (Sandbox Code Playgroud)

以上查询给出

System.NotSupportedException: LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be translated into a store expression

我能做什么?

linq-to-entities

8
推荐指数
2
解决办法
3万
查看次数

使用不安全与安全的C#代码有什么好处?

unsafe static void SquarePtrParam (int* p) 
   {
      *p *= *p;
   }
Run Code Online (Sandbox Code Playgroud)

VS

static void SquarePtrParam (ref int p) 
   {
      p *= p;
   }
Run Code Online (Sandbox Code Playgroud)

c# unsafe

8
推荐指数
3
解决办法
4900
查看次数

在Perl中,为什么绑定数组这么慢?

在我的测试中,我注意到迭代绑定数组的速度最好是使用内部存取方法(FETCHFETCHSIZE)的一半.以下基准显示了该问题:

{package Array;
    sub new {
        my $class = shift;
        tie my @array, $class, [@_];
        \@array
    }
    sub TIEARRAY {
        my ($class, $self) = @_;
        bless $self => $class;
    }
    sub FETCH     {$_[0][$_[1]]}
    sub FETCHSIZE {scalar @{$_[0]}}
}

use List::Util 'sum';
use Benchmark 'cmpthese';

for my $mag (map 10**$_ => 1 .. 5) {

    my $array = Array->new(1 .. $mag);
    my $tied  = tied(@$array);
    my $sum   = sum @$array;

    print "$mag: \n";
    cmpthese -2 => { …
Run Code Online (Sandbox Code Playgroud)

perl performance

8
推荐指数
2
解决办法
933
查看次数

qpainter绘画替代品(性能在Mac上很糟糕)

我有一个类在QWidget中显示音频文件的波形数据(见下面小部件的屏幕截图,然后我仍然使用渐变,这导致性能不佳).

音频数据直接在widget上使用多次调用绘制在paintEvent中QPainter::drawLine(最小调用量QWidget::drawLine相当于widget的宽度=>每个x坐标至少有一行).虽然该方法在Windows上运行良好(全屏的paintEvent大约需要4毫秒),但在MacOS下运行程序时,性能会下降4-5倍.

绘画的性能对于显示数据的流体滚动很重要.

所以我的问题是,有没有人知道更快的QPainter.drawLine替代方案来绘制线条(平台相关的解决方案可能没问题,只要它们可以在paintEvent中使用),或者有没有办法加快滚动,某种缓冲等?

小部件的旧屏幕截图(仍然使用渐变,导致性能不佳)

c++ macos performance qt paint

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

C语言中的Win32 - 为什么我的文本显示为外语?

开始查看此站点上的win32 API:http://www.winprog.org/tutorial/start.html

我真的只编译了第一个例子,它给了我一个中文/日文的消息提示,或者那些沿线的东西.

问题:为什么?

显然,就我的理解而言,我应该得到"再见,残酷的世界!" 在消息框中(推测标题为'注意').

#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, 
LPSTR lpCmdLine, int nCmdShow)
{
MessageBox(NULL, "Goodbye, cruel world!", "Note", MB_OK);
return 0;
}
Run Code Online (Sandbox Code Playgroud)

国外...

谢谢.

c winapi locale

8
推荐指数
2
解决办法
2168
查看次数

CLR通过C#4th Ed. - 对等待任务死锁感到困惑

杰弗里里希特在他的书"CLR via C#"中指出了我不理解的可能死锁的例子(第702页,边框段落).

该示例是一个运行Task并为此Task调用Wait()的线程.如果未启动任务,则Wait()调用可能不会阻塞,而是运行未启动的任务.如果在Wait()调用之前输入了锁,并且Task也尝试输入此锁,则可能导致死锁.

但是锁是在同一个线程中输入的,如果这最终导致死锁情况?

以下代码生成预期输出.

class Program
{
    static object lockObj = new object();

    static void Main(string[] args)
    {
        Task.Run(() =>
        {
            Console.WriteLine("Program starts running on thread {0}",
                Thread.CurrentThread.ManagedThreadId);
            var taskToRun = new Task(() =>
            {
                lock (lockObj)
                {
                    for (int i = 0; i < 10; i++)
                        Console.WriteLine("{0} from Thread {1}", 
                            i, Thread.CurrentThread.ManagedThreadId);
                }
            });

            taskToRun.Start();
            lock (lockObj)
            {
                taskToRun.Wait();
            }

        }).Wait() ;
    }
}

/* Console output
Program starts running on thread 3
0 from Thread 3 …
Run Code Online (Sandbox Code Playgroud)

.net c# clr deadlock task-parallel-library

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

收据打印机?

我正在开发一个需要打印收据的软件.

什么是最常见的收据打印机类型?

收据打印机API是否有任何行业标准?

那有什么.net库吗?试图找到但没有找到任何东西.

.net printing point-of-sale zebra-printers

7
推荐指数
2
解决办法
4841
查看次数

如何在.Net中操纵令牌权限?

我想使用C#来确定为我的进程/线程令牌分配了哪些权限,并根据需要进行调整.例如,为了让我的程序重新启动计算机,它必须首先启用该SeShutdownPrivilege权限.

如何从托管代码安全地完成?

.net c# privileges token

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

为什么int [] a = new int [1]而不仅仅是int?

这段代码中是否有一些隐藏的含义,我在java中没有看到?它有什么用?

int[] a = new int[1];
Run Code Online (Sandbox Code Playgroud)

而不仅仅是

int a;
Run Code Online (Sandbox Code Playgroud)

因为从我的观点来看它是一样的吗?

java integer

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

在ASP.NET标签和文本框中编写从右到左的句子

如何在ASP.NET标签或文本框中正确显示英语和非英语(波斯语,波斯语,中东语)单词?当我输入或只显示英语或非英语(波斯语)单词时,这是可以的,但当我输入或显示包含它们的句子时,一切都不正常,我的句子错位,标点符号被错误地插入换句话说,很难理解写的是什么.当我要使用Office Word编写波斯文档(可能包含英文单词)时,首先我将段落方向设置为从右到左,是否可以在ASP.NET中执行类似的操作?当然我在我的ASPX文件中设置了以下样式,现在我的文本框从右到左开始写,但它没有解决上述问题!

Style="text-align: right"
Run Code Online (Sandbox Code Playgroud)

我怎么解决呢?谢谢

html asp.net multilingual right-to-left

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