问题列表 - 第6432页

LINQ - 左连接,分组依据和计数

假设我有这个SQL:

SELECT p.ParentId, COUNT(c.ChildId)
FROM ParentTable p
  LEFT OUTER JOIN ChildTable c ON p.ParentId = c.ChildParentId
GROUP BY p.ParentId
Run Code Online (Sandbox Code Playgroud)

如何将其转换为LINQ to SQL?我被困在COUNT(c.ChildId),生成的SQL似乎总是输出COUNT(*).这是我到目前为止所得到的:

from p in context.ParentTable
join c in context.ChildTable on p.ParentId equals c.ChildParentId into j1
from j2 in j1.DefaultIfEmpty()
group j2 by p.ParentId into grouped
select new { ParentId = grouped.Key, Count = grouped.Count() }
Run Code Online (Sandbox Code Playgroud)

谢谢!

.net c# linq linq-to-sql

165
推荐指数
5
解决办法
19万
查看次数

Qt XML输入

我正在尝试使用Qt工具包从C++程序中的XML文件输入数据.我的XML数据格式如下:

`<item>
    <title>title<\title>
    <tree_loc1>0<\tree_loc1>
    <parent>parent<\parent>
    <description>description<\description>
    <other_info>other info<\other_info>
    <location>location<\location>
    <last_modified>Mar 28 2009 8:16 pm<\last_modified>
    <radio>0<\radio>
 </item>`
Run Code Online (Sandbox Code Playgroud)

目前我必须在XML中阅读的功能如下.不幸的是,它识别来自第一个标签(标题)的数据,然后将所有将来访问数据的尝试都返回为NULL.我传入的subRoot是domDocument.documentElement().我是XML的新手,对Qt来说有点新,并且非常感谢您在解决我的问题时提供的任何帮助!非常感谢你.

void XmlHandler::readXML(QStandardItemModel *model, QDomNode subRoot){
  QDomElement node;
  QString title;
  int row;
  QString parent;
  QString description;
  QString other_info;
  QString location;
  QString last_modified;
  QString radio;
  QString value;
  bool flag;

  if (subRoot.isNull())
    return; // error condition

  for (int i = 0; i < N_STRINGS; i++){
    node = subRoot.firstChildElement(tagName[i]); // returns NULL all but the 1st time
    value = DEFAULT_VALUE;

    value = node.text();
    switch (i) {
      case …
Run Code Online (Sandbox Code Playgroud)

c++ xml qt

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

my_object.save(false)并不真正跳过我的Active Record验证

所以我一直在解决这个我一直遇到的错误,我终于发现了导致它的原因.当我打电话时,我一直都有这样的印象

@my_model.save(false)
Run Code Online (Sandbox Code Playgroud)

我将跳过我的ActiveRecord验证.事实证明这是部分正确的.我的对象正在保存到数据库DESPITE我的ActiveRecord验证.我的问题存在,因为我的一个验证在验证过程中修改了一个子模型(这是一个24小时位置的调度应用程序,因此当保存午餐时,我会在他们保存的那天检查它们,第二天同时确保用户并不意味着"凌晨2点"换班.

我的问题是:有没有办法实际跳过我的验证并直接进入数据库?这是正常的ActiveRecord行为还是我应该深入了解我的验证?或者我运气不好,需要重新编写我的验证?

ruby activerecord ruby-on-rails

5
推荐指数
3
解决办法
1241
查看次数

为什么每次运行应用程序时都必须使用导出定义LD_LIBRARY_PATH?

我有一些使用一些共享库的代码(gcc上的c代码).编译时我必须使用-I和-L显式定义include和library目录,因为它们不在标准位置.当我尝试运行代码时,出现以下错误:

./sync_test 
./sync_test: error while loading shared libraries: libsync.so: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

但是,执行以下操作,一切正常:

export LD_LIBRARY_PATH="/path/to/library/"
./sync_test
Run Code Online (Sandbox Code Playgroud)

现在,奇怪的是,这只能工作一次.如果我再次尝试运行sync_test,除非我先运行export命令,否则会得到相同的错误.我尝试将以下内容添加到我的.bashrc中,但它没有区别:

LD_LIBRARY_PATH="/path/to/library/"
Run Code Online (Sandbox Code Playgroud)

c linux gcc shared-libraries ld

41
推荐指数
5
解决办法
11万
查看次数

在c#中将数据传递给回调方法(通过BeginInvoke)

我有以下代码:

    delegate int doStuffDel(int instanceNo, int sleepTime, int repeatCount);
    string result;

    private int doStuff(int instanceNo, int sleepTime, int repeatCount)
    {
        for (int i = 0; i < repeatCount; i++)
        {
            Console.Write(instanceNo);
            Thread.Sleep(sleepTime);
        }
        result = instanceNo + " repeated " + repeatCount;
        return instanceNo;
    }

    private void button3_Click(object sender, EventArgs e)
    {
        doStuffDel del = doStuff;
        IAsyncResult ar = del.BeginInvoke(3, 120, 50, finishedCallback, result);
    }

    private void finishedCallback(IAsyncResult ar)
    {
        Console.WriteLine("Done. The result was " + ar.AsyncState.ToString());
    }
Run Code Online (Sandbox Code Playgroud)

我认为res.AsyncState将返回字符串,作为BeginInvoke调用中的最后一个参数传递,但它为null.有人知道为什么吗?

PS,我知道我可以将del作为BeginInvoke中的最后一个参数传递,然后在回调中调用EndInvoke,从doStuff方法中获取一些结果,或者我可以从类中获取字符串val! …

.net c# multithreading

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

声明没有初始大小的数组

我正在尝试使用Visual Studio 2008在Windows Vista x64上编译OpenSSL(pyOpenSSL)的Python绑定.当我运行时python setup.py build_ext -I C:\OpenSSL\include,它会因以下错误而死掉:

building 'OpenSSL.crypto' extension
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -I\OpenSSL\include -IC:\Python26\include -IC:\Python26\PC /Tcsrc/crypto/x509name.c /Fobuild\temp.win-amd64-2.6\Release\src/crypto/x509name.obj
x509name.c
src/crypto/x509name.c(16) : error C2133: 'crypto_X509Name_methods' : unknown size
error: command '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\cl.exe"' failed with exit status 2
Run Code Online (Sandbox Code Playgroud)

当我查看相关来源时,我在第16行看到以下内容:

static PyMethodDef crypto_X509Name_methods[];
Run Code Online (Sandbox Code Playgroud)

我的C非常生疏,所以我不记得你是否可以这样做.由于这是一个Python库,我猜这是用gcc编译的,但我没有在这台计算机上安装Cygwin环境.是否有一些开关可用于使用VS2008编译此代码?

回答:

稍后在代码中,有这样的:

/*
 * ADD_METHOD(name) expands to a correct PyMethodDef declaration
 *   {  'name', (PyCFunction)crypto_X509_name, METH_VARARGS }
 * for convenience
 */ …
Run Code Online (Sandbox Code Playgroud)

c

4
推荐指数
2
解决办法
733
查看次数

在基于PPC的计算机上开发iPhone

在其他地方已经说过,为iPhone开发需要一台基于英特尔的计算机,但根据我读过的几篇介绍性Apple文档,情况似乎并非如此.见这个例如,它只是说,"要为iPhone OS开发应用程序,你需要一台Mac OS X计算机上运行的Xcode工具." 任何人都可以提供参考吗?

iphone macos intel

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

从MySql移植到T-Sql.任何INET_ATON()等效?

需要将一些代码从MySql移动到TSql.我有一些对INET_ATON的调用,它将类似于IPAddress的字符串转换为数字.是否有T-SQL等价物?

mysql sql t-sql

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

在MS SQL Server中创建保留字/关键字的表名

是否可以命名已经是关键字的数据库表?对于我的情况,我试图命名将保留我的用户的表.我把它命名为User但它在SQL Server Management Studio中显示为粉红色,所以我假设它是现有的系统表或关键字.谢谢你的建议.

保留关键字的官方列表:保留关键字(Transact-SQL)

sql sql-server

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

使用批处理文件打开多个PDF文档

我试图使用一个简单的批处理文件打开几个PDF文档:

ECHO OFF
CLS
cd Program Files\Adobe\Reader 9.0\Reader
Acrord32.exe C:\Users\BW1.pdf
Acrord32.exe C:\Users\BW2.pdf
Acrord32.exe C:\Users\BW3.pdf
Acrord32.exe C:\Users\BW4.pdf
Acrord32.exe C:\Users\BW5.pdf
Acrord32.exe C:\Users\BW6.pdf
EXIT
Run Code Online (Sandbox Code Playgroud)

上面的批处理文件只打开第一个PDF,然后等到我关闭它以打开下一个PDF文件.如何同时打开所有PDF文档?(比如去Acrobat Reader,file-> Open-> xx.pdf)

windows pdf acrobat cmd batch-file

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