问题列表 - 第4029页

使用GROUP BY和COUNT(DISTINCT)的LINQ to SQL

我必须执行以下SQL查询:

select answer_nbr, count(distinct user_nbr)
from tpoll_answer
where poll_nbr = 16
group by answer_nbr
Run Code Online (Sandbox Code Playgroud)

LINQ to SQL查询

from a in tpoll_answer 
where a.poll_nbr = 16 select a.answer_nbr, a.user_nbr distinct 
Run Code Online (Sandbox Code Playgroud)

映射到以下SQL查询:

select distinct answer_nbr, distinct user_nbr
from tpoll_answer
where poll_nbr = 16
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.但是在尝试GROUP结果时问题就出现了,因为我无法找到映射到我在这里写的第一个查询的LINQ to SQL查询(感谢LINQPad让这个过程变得更容易).以下是我发现的唯一一个给我预期结果的:

from answer in tpoll_answer where answer.poll_nbr = 16 _
group by a_id = answer.answer_nbr into votes = count(answer.user_nbr)
Run Code Online (Sandbox Code Playgroud)

这反过来会产生所有SQL查询中的丑陋和非优化:

SELECT [t1].[answer_nbr] AS [a_id], (
    SELECT COUNT(*)
    FROM (
        SELECT CONVERT(Bit,[t2].[user_nbr]) AS [value], [t2].[answer_nbr], [t2].[poll_nbr] …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-sql

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

使用Acegi/Spring Security创建自定义身份验证

我无法发现我需要实现的内容,以便使用Spring Security的Web应用程序使用自定义身份验证方法.我有一个带有Spring Security插件的Grails应用程序,该插件目前使用标准用户/密码身份验证和浏览器表单.这是正常的.

我需要实现一种机制,实现一种MAC身份验证.如果HTTP请求包含多个参数(例如用户标识符,时间戳,签名等),我需要获取这些参数,执行一些散列和签名/时间戳比较,然后对用户进行身份验证.

我不是100%确定从哪里开始.我需要扩展/实现哪些Spring Security类?我已阅读参考文档并对概念有一个正确的理解,但我不确定我是否需要过滤器或提供程序或管理器,或者在何处/如何准确创建身份验证对象.我试图扩展AbstractProcessingFilter和/或实现AuthenticationProvider,但我只是理解了如何让它们完美地发挥作用.

spring-security

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

检测字符串是否全部是CAPS

在C#中有一种方法可以检测字符串是否全部为大写字母?

大多数字符串都很短(即不超过100个字符)

c# string

52
推荐指数
6
解决办法
4万
查看次数

Python - 使用进度条和基本身份验证通过HTTP下载文件

我正在使用urllib.urlretrieve下载文件,并使用reporthook参数实现下载进度条.由于urlretrieve不直接支持身份验证,我想出了

import urllib

def urlretrieve_with_basic_auth(url, filename=None, reporthook=None, data=None,
                                username="", password=""):
    class OpenerWithAuth(urllib.FancyURLopener):
        def prompt_user_passwd(self, host, realm):
            return username, password

    return OpenerWithAuth().retrieve(url, filename, reporthook, data)
Run Code Online (Sandbox Code Playgroud)

这有效 - 但似乎可能有更直接的方法来做到这一点(可能使用urllib2或httplib2或......) - 任何想法?

python http download

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

在基类构造函数中调用虚方法

我知道,从基类的构造函数调用虚方法可能是危险的,因为子类可能不处于有效状态.(至少在C#中)

我的问题是如果虚拟方法是初始化对象状态的那个?它是很好的做法,还是应该是两个步骤,首先创建对象,然后加载状态?

第一个选项:(使用构造函数初始化状态)

public class BaseObject {
    public BaseObject(XElement definition) {
        this.LoadState(definition);
    }

    protected abstract LoadState(XElement definition);
}
Run Code Online (Sandbox Code Playgroud)

第二种选择:(使用两步法)

public class BaseObject {
    public void LoadState(XElement definition) {
        this.LoadStateCore(definition);
    }

    protected abstract LoadStateCore(XElement definition);
}
Run Code Online (Sandbox Code Playgroud)

在第一种方法中,代码的使用者可以使用一个语句创建和初始化对象:

// The base class will call the virtual method to load the state.
ChildObject o = new ChildObject(definition)
Run Code Online (Sandbox Code Playgroud)

在第二种方法中,消费者必须创建对象然后加载状态:

ChildObject o = new ChildObject();
o.LoadState(definition);
Run Code Online (Sandbox Code Playgroud)

c# c++ java constructor

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

静态链接到动态库.glibc的

所以.我有一个问题,我在一台机器上有两个版本的GCC.
3.4.6和4.1

这是由于新软件的一些依赖性问题.(需要glibc 4.1)

当我将这个新软件与4.1库链接时,它链接得很好.但是,当涉及到执行软件时,它无法找到库,因为它在我的LD_LIBRARY_PATH中查看3.4.6.如果我将LD_LIBRARY_PATH设置为4.1 lib,它会破坏shell,同时杀死其他东西,因为3.4.6库用于此目的.

它有点像22.

有没有办法在链接时我可以在不使用LD_LIBRARY_PATH的情况下给出该共享库的绝对路径?

这样我希望有两个版本,但只使用4.1这个特定的应用程序?

linker gcc glibc g++

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

是否有一个.NET IoC更喜欢约定优于配置?

简单地说,如果你必须使用IoC/DI容器,这很容易部署(不是使用config/xml文件的大风扇),稳定,良好的文档和支持.net,它会是哪一个?

它可能只是我,但是有太多的xml文件,比如一个用于应用程序,一些用于ORM,一些用于另一个组件有时会变得无法应对.而且,我看待它的方式,如果有一种做事方式(约定),那么把事情搞得一团糟的可能性就会降低.

期待您的建议和可能的经验.我主要担心的是可维护性和易部署性.

.net dependency-injection inversion-of-control

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

2074
推荐指数
12
解决办法
100万
查看次数

c#HttpModule处理伪子域

我是.NET的开发人员,也是个人项目的新手.我的项目将允许用户创建自己的简单移动网站.

我想编写一个处理伪子域的HTTP模块.

我已经设定我的DNS通配符,so sub.domain.comxxx.domain.com等指向同一个应用程序.我希望能够从sub.domain.com/pageID.htmlURL中提取子部分和ID部分,并从数据库服务器加载页面设置,以便构建页面并将其呈现给客户端.

我可以使用URL重写工具isapirewrite,但我希望我的应用程序独立于操作系统,以便服务器不需要安装任何第三方应用程序.

是否可以使用HTTP处理程序执行此操作?

任何人都可以发一个例子吗

asp.net wildcard-subdomain pseudocode

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

如何使用awk或Perl递增大型XML文件中的数字?

我有一个XML文件,其中包含以下行:

            <VALUE DECIMAL_VALUE="0.2725" UNIT_TYPE="percent"/>
Run Code Online (Sandbox Code Playgroud)

我想将此值增加.04并保持XML的格式.我知道这可以使用Perl或awk脚本,但是我很难用表达式来隔离数字.

perl awk

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