问题列表 - 第13055页

SQLServer CASE表达式 - 短路评估?

我正在尝试优化执行以下操作的查询:

SELECT
   ...
   CASE WHEN (condition) THEN (expensive function call #1)
   ELSE (expensive function call #2) 
   END
...
Run Code Online (Sandbox Code Playgroud)

查询计划显示,即使在100%的行满足WHEN子句的情况下,大部分时间都花在调用ELSE分支中的结果上.

我能理解这一点的唯一方法是假设SQLServer正在评估两个结果,然后只根据WHEN条件的评估选择一个结果,但我找不到任何关于CASE结果的确定性引用语句在条件之前进行评估.有人可以澄清或指点我参考吗?

sql sql-server optimization performance

6
推荐指数
2
解决办法
2877
查看次数

.Net命名空间问题

我有两个名称空间:

1)Foo.Bar

2)Another.Foo.Bar

从命名空间2中的类,如何引用命名空间1中的类?使用Foo.Bar离开你的命名空间2仍然...

我希望这个相当清楚!

谢谢.

.net c# namespaces visual-studio

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

如何限制Rails路由文件中的资源格式

在Rails中路由资源时,可选的format属性会自动附加到生成的路由中.这样可以将所讨论的资源请求为XML,HTML等.实际允许的格式通常在控制器中使用respond_to.

但在许多情况下,您只想支持HTML,并且respond_to :html在每个控制器中的每个操作中写入感觉都是一种开销.因此,如果在routes.rb文件中构建路由时已经有限制允许内容类型的方法,那将是很酷的,例如

map.resources :users, :formats => :html
map.resources :users, :formats => [:html, :xml]
map.resources :users, :formats => {:index => :html, :show => [:html, :xml]}
Run Code Online (Sandbox Code Playgroud)

有没有办法实现本机或通过插件?

PS解决此问题的常用方法是忽略该问题,不要respond_to在操作中使用.但这实际上并不限制允许的内容类型.相反,它只是期望视图目录中存在每种可能的内容类型的模板.如果在请求时不存在,则系统将抛出HTTP 500错误.

rest routing content-type ruby-on-rails

13
推荐指数
3
解决办法
7438
查看次数

使用C#中的"Type"对象键入转换对象

到目前为止,这个对我来说有点棘手.我想知道是否可以使用System.Type对象键入强制转换对象.

我在下面说明了我的意思:

public interface IDataAdapter
{
    object Transform(object input);
    Type GetOutputType();
}

public class SomeRandomAdapter : IDataAdapter
{
    public object Transform(object input)
    {
        string output;

        // Do some stuff to transform input to output...

        return output;
    }

    public Type GetOutputType()
    {
        return typeof(string);
    }
}

// Later when using the above methods I would like to be able to go...
var output = t.Transform(input) as t.GetOutputType();
Run Code Online (Sandbox Code Playgroud)

以上是一个通用接口,这就是我为类型使用"object"的原因.

c# reflection boxing types casting

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

如何在lxml中为属性添加命名空间

我正在尝试使用python和lxml创建一个看起来像这样的xml条目:

<resource href="Unit 4.html" adlcp:scormtype="sco">
Run Code Online (Sandbox Code Playgroud)

我正在使用python和lxml.我遇到了adlcp:scormtype属性问题.我是xml的新手,所以如果我错了请纠正我. adlcp是一个名称空间,scormtype是一个在adlcp名称空间中定义的属性,对吧?
我甚至不确定这是否是正确的问题但是...我的问题是,如何使用lxml从非默认命名空间向元素添加属性?如果这是一个微不足道的问题,我会提前道歉.

python xml lxml scorm

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

找出正则表达式在Python中的字符串中匹配的次数

有没有办法可以找出Python中字符串中有多少正则表达式匹配?例如,如果我有字符串"It actually happened when it acted out of turn."

我想知道"t a"字符串中出现了多少次.在该字符串中,"t a"出现两次.我希望我的功能告诉我它出现了两次.这可能吗?

python regex

38
推荐指数
5
解决办法
4万
查看次数

stringstream,string和char*转换混乱

我的问题可以归结为,字符串从stringstream.str().c_str()内存中返回的字符串在哪里,为什么不能将其分配给const char*

这个代码示例将比我更好地解释它

#include <string>
#include <sstream>
#include <iostream>

using namespace std;

int main()
{
    stringstream ss("this is a string\n");

    string str(ss.str());

    const char* cstr1 = str.c_str();

    const char* cstr2 = ss.str().c_str();

    cout << cstr1   // Prints correctly
        << cstr2;   // ERROR, prints out garbage

    system("PAUSE");

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

stringstream.str().c_str()可以分配给a 的假设const char*导致我花了一段时间追踪的错误.

对于奖励积分,任何人都可以解释为什么替换cout声明

cout << cstr            // Prints correctly
    << ss.str().c_str() // Prints correctly
    << cstr2;           // Prints correctly (???)
Run Code Online (Sandbox Code Playgroud)

正确打印字符串? …

c++ memory string stringstream

137
推荐指数
5
解决办法
15万
查看次数

什么是断言或NSAssert在实践中有益?

我想知道在整个地方使用NSAssert是否是一个好习惯?这样做有什么好处?在哪些情况下使用它是个好主意?

iphone cocoa-touch uikit

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

得到nswindow的大小

有没有什么方法可以获得NSWindow的大小(以像素为单位)并显示它?因此,当此人调整窗口大小时,文本将更改并显示新大小.

size cocoa nswindow

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

如何使 .net 程序集文件尽可能小?

我有一个 .net 程序集,其中包含磁盘上相当大的数据访问代码(一堆类型化数据集和帮助程序类)(~2.5MB)。我能做些什么来弄清楚为什么它这么大并使它变小?

.net size assemblies file

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