问题列表 - 第22419页

为什么MethodInfo.Invoke在TargetInvocationException中包装异常?

我出于好奇而不是因为真正需要知道这个问题,但我想不出MethodInfo.Invoke包装其异常的任何好理由.

如果让它们通过解包,在Visual Studio中调试这些异常会更容易一些 - 我不必要求VS停止第一次机会异常以查看异常源的当前状态.堆栈跟踪可能会在调用之后显示[外部代码] Invoke,但是那样.

我是否遗漏了一些重要的功能,这个包装提供了不可能Invoke让异常通过解包?

.net reflection

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

将异常放在自己的子包中?

在我正在为项目工作的当前包中,我有大约13种不同的自定义异常.将这些放在包含所有将使用这些异常的类的包下面的子包中是一个好主意吗?

例如:

com.company.project.core

包含一堆类,可以抛出一些自定义异常,然后放在其中

com.company.project.core.exception

我现在看到的唯一缺点是我使用异常对类进行了更多的导入.

java packages exception

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

按惯例返回零是什么意思?

这可能是一个愚蠢的问题,但我总是发现自己想知道哪个是标准.

在大多数(不是说全部)C++第一个例子中,您可能会看到main函数返回0值.这意味着操作是否正常?

  • 0 - >好的
  • 1 - >不行.
  • 其他 - >?

这是标准的做法吗?

顺便说一下,在这种情况下返回整数或布尔值会更好吗?

感谢你们!

c++

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

SQL索引问题:为什么SQL Server更喜欢这个NONCLUSTERED索引到CLUSTERED索引?

我有以下查询:

SELECT
    COUNT(*)
FROM
    FirstTable ft
        INNER JOIN SecondTable st ON ft.STID = st.STID
Run Code Online (Sandbox Code Playgroud)

你可以猜到,"STID"是"SecondTable"的主键......而"FirstTable"将有一个指向第二个表的指针.以下是我的索引:

FirstTable:"STID"列上的非集群索引

SecondTable:CLUSTERED PRIMARY KEY关于"STID"的指数

上面的查询给我一个19.90的子树成本,需要2秒.

在为该查询运行数据库调优顾问程序之后,他们建议使用与第二个表相同的索引...但是非聚集.所以我尝试了这些结果.

FirstTable:"STID"列上的非集群索引

SecondTable:NONCLUSTERED关于"STID"的指数

现在,上面的查询给我一个10.97的子树成本,并且需要<1秒!

这100%粉碎了我的大脑......为什么NONCLUSTERED索引在这种情况下的执行速度比CLUSTERED索引快?

sql-server indexing performance clustered-index

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

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

Java中的抽象变量?

我来自c#,这很容易,而且可能.

我有这个代码:

public abstract class clsAbstractTable {

    public abstract String TAG;
    public abstract void init();

}
Run Code Online (Sandbox Code Playgroud)

但是Eclipse告诉我我使用非法修改器.

我有这门课:

public class clsContactGroups extends clsAbstractTable {


}
Run Code Online (Sandbox Code Playgroud)

我希望以这种方式定义变量和方法,Eclipse 提示我,我没有实现抽象变量和方法.

我如何定义我的抽象类,以便提示我实现摘要?

编辑1

我将为不同的db表创建不同的类.每个类都应该有自己的TABLENAME变量,没有例外.每当我创建一个扩展抽象类的新类时,我必须确保这个变量是静态的.

然后在抽象类中我将有一个方法例如:init();

如果在这个init()方法中我调用TABLENAME,它应该从子类中获取值.

这样的事情也应该成功

String tablename=(clsAbstract)objItem.TABLENAME;
// where objItem can be any class that extended clsAbstract;
Run Code Online (Sandbox Code Playgroud)

编辑2

我希望在每个类中定义一个常量(静态),其名称用abstract定义.

  • 我在abstract中定义变量TABLENAME,但没有给出值.
  • 我创建了一个clsContactGroups,我应该提示我实现TABLENAME,这是获取一些数据的地方.例如:TABLENAME ="contactgroups";
  • 我创建了第二个类clsContacts,我应该提示我实现TABLENAME,这是获取一些数据的地方.例如:TABLENAME ="contacts";
    等等...

java variables class abstract

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

C#发行版仍有.pdb文件

我想部署在C#中完成的应用程序的发布版本.

当我使用Release配置构建时,我仍然可以看到生成了.pdb文件,这意味着我的应用程序仍然可以调试.这也意味着我的代码中某处存在一些调试信息,从而使其速度降低一些.

如果是这样,我怎样才能完全抑制二进制文件中产生的任何调试信息?你也知道释放的原因.pdb吗?该Release配置具有Optimize code检查,并且只有TRACE常数被定义,而不是DEBUG.

谢谢你的帮助.

c# release-mode pdb-files

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

序列化没有表格?

大家好,我正在使用html对象而不是表单在html页面上"打开(添加类.active)和关闭"对象.并且在每次点击时我都希望它用类.active创建一个项目数组但是我似乎无法获得任何结果?!

这是正确的方向吗?

var data = $('li.tagToggle.active').serializeArray();
// li id format is 'id_0001' 
alert(data)
$.post("/scripts/php/process.php",{ 
         'data[]': data,
         funcName : 'tagResults',
         tagResults : '1'
}) 
Run Code Online (Sandbox Code Playgroud)

保持警报和空窗口,但当我在表单上使用它时,它会抓取类.active的所有对象

任何指针欢迎!

jquery serialization object

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

如何使HTML 5视频播放适合帧而不是保持宽高比?

我一直在尝试HTML5视频播放.例如,我在页面上嵌入了这个视频对象:

<video width="480" height="380" class="ecard" tabindex="0">
   <source type="video/ogg; codecs=&quot;theora, vorbis&quot;" src="videos/1156 In your honor we'll be dancing.ogv"></source>
   <source type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;" src="videos/1156 In your honor we'll be dancing.mp4"></source>
</video>
Run Code Online (Sandbox Code Playgroud)

我的问题是视频元素保留了它的宽高比,而我宁愿强制播放适合帧.有谁知道这样做的方法?

video html5

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

Ruby方法和多个默认值的排序

我似乎无法做到这一点(我以前在Python中可以做到这一点).让我解释 ..

假设我在Ruby中有以下方法:

def someMethod(arg1=1,arg2=2,arg3=3)
...
...
...
end
Run Code Online (Sandbox Code Playgroud)

现在我可以这样称呼这种方法

someMethod(2,3,4)
someMethod(2,3)
someMethod(2)
Run Code Online (Sandbox Code Playgroud)

并且参数是由它们各自的顺序进行的..但是如果我想在编程中的某个时刻给出arg2并且想要arg1和arg3的默认值呢?

我尝试编写someMethod(arg2 = 4),但这似乎不适用于Ruby 1.9.它做的是它仍然认为arg1是4.在python我至少可以逃脱这个,但在红宝石中我不确定.有没有人有任何优雅的想法?

ruby

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