如何在以下情况下设置命令超时?为了澄清,我已经在连接字符串中设置了连接超时,但是我还需要设置命令超时,因为我希望查询能够在需要时运行5分钟,但是它会在不到一个时间内超时一会儿.
String reportQuery = @" complicated query returning many rows ";
SqlConnection ReportConnect = new SqlConnection(ConnectionString);
ReportConnect.Open();
DataSet tempDataset = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(reportQuery, ReportConnect);
da.Fill(tempDataset);
Run Code Online (Sandbox Code Playgroud) 如何在OSX leopard中使用python语言在/ var/log目录中创建新文件?我尝试使用os.open函数,但我得到"许可被拒绝"
提前致谢
我试图用一个函数来扩展Javascript的Object类型,该函数检索属于该对象的所有属性名称(基本上是PHP的array_keys()
函数对关联数组的作用).
Object.prototype.keys = function() {
var a = [];
for (var property in this) {
a.push(property);
}
return a;
};
var a = {a:1,b:2,c:3,d:4};
alert(a.toSource());
var b = a.keys();
alert(b.toSource());
Run Code Online (Sandbox Code Playgroud)
当变量b
被警告时,我期待看到["a","b","c","d"]
,而不是我看到的["a","b","c","d","keys"]
.
看来for-in循环包括原型keys()
函数.
是否有可能在仍然进行原型设计的同时避免这种行为,或者我是否应该避免一起进行原型设计?
简而言之:我发现Java反模式是不可或缺的资源.适合初学者和专业人士.我还没有为C#找到这样的东西.所以我将这个问题作为社区维基开放,并邀请所有人分享他们对此的了解.由于我是C#的新手,我对此很感兴趣,但不能从一些反模式开始:/
以下是我发现C#而不是其他语言的答案.
我只是复制/粘贴这些!考虑看看这些评论.
NullReferenceException
抛出错误的异常:
if (FooLicenceKeyHolder == null)
throw new NullReferenceException();
Run Code Online (Sandbox Code Playgroud)
类中的公共变量(改为使用属性).
除非该类是一个简单的数据传输对象.
if (myBooleanVariable == true)
{
...
}
Run Code Online (Sandbox Code Playgroud)
或者,甚至更好
if (myBooleanVariable != false)
{
...
}
Run Code Online (Sandbox Code Playgroud)
这样的结构通常使用C
和C++
开发,其中一个布尔值的想法只是一个约定(0 ==假的,什么都为true); 在C#或其他具有真正布尔值的语言中,这不是必需的(或可取的).
using()
没有using
在适当的地方使用:
object variable;
variable.close(); //Old code, use IDisposable if available.
variable.Dispose(); //Same as close. Avoid if possible use the using() { } pattern.
variable = null; //1. in release optimised away. 2. C# is …
Run Code Online (Sandbox Code Playgroud) rails关联方法如何工作?让我们考虑这个例子
class User < ActiveRecord::Base
has_many :articles
end
class Article < ActiveRecord::Base
belongs_to :user
end
Run Code Online (Sandbox Code Playgroud)
现在我可以做点什么了
@user = User.find(:first)
@user.articles
Run Code Online (Sandbox Code Playgroud)
这会抓取属于该用户的文章.到现在为止还挺好.
现在我可以继续在某些条件下对这些文章进行查找.
@user.articles.find(:all, :conditions => {:sector_id => 3})
Run Code Online (Sandbox Code Playgroud)
或者简单地声明和关联方法
class User < ActiveRecord::Base
has_many :articles do
def of_sector(sector_id)
find(:all, :conditions => {:sector_id => sector_id})
end
end
end
Run Code Online (Sandbox Code Playgroud)
并做
@user.articles.of_sector(3)
Run Code Online (Sandbox Code Playgroud)
现在我的问题是,这find
对ActiveRecord
使用关联方法获取的对象数组有何影响?因为如果我们实现我们自己的User
实例方法调用articles
并编写我们自己的实现,它给出了与关联方法完全相同的结果,那么ActiveRecord
对象的获取数组上的查找将不起作用.
我的猜测是,关联方法将某些属性附加到获取对象数组,从而可以使用find
其他ActiveRecord
方法进一步查询.在这种情况下,代码执行的顺序是什么?我怎么能验证这个?
我创建了一个JAR文件.现在,我创建了另一个Java程序.我想在其他目录中解压缩该JAR文件,这意味着我想做一些像解压缩这样的事情.
如果我运行jar -xf filename.jar
这会导致一些错误:
Exception in thread "main" java.io.IOException: Cannot run program "jar":
java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exec(Runtime.java:593)`
Run Code Online (Sandbox Code Playgroud) 任何人都可以给我示例代码,我可以用来首先提出一个模态视图控制器,然后解雇它?这就是我一直在尝试的:
NSLog(@"%@", blue.modalViewController); [blue presentModalViewController:red animated:YES]; NSLog(@"%@", blue.modalViewController); [blue dismissModalViewControllerAnimated:YES]; NSLog(@"%@", blue.modalViewController);此代码位于viewDidLoad中("blue"和"red"都是UIViewController的子类).我希望我会显示红色视图然后立即隐藏它,并带有一些动画.但是这段代码只提供了模态视图,并没有忽略它.任何的想法?第一个日志显示"null",而另外两个日志显示<RedViewController:0x3d21bf0>
我在iPhone中使用以下代码来获得较小的裁剪图像,如下所示:
- (UIImage*) getSmallImage:(UIImage*) img
{
CGSize size = img.size;
CGFloat ratio = 0;
if (size.width < size.height) {
ratio = 36 / size.width;
} else {
ratio = 36 / size.height;
}
CGRect rect = CGRectMake(0.0, 0.0, ratio * size.width, ratio * size.height);
UIGraphicsBeginImageContext(rect.size);
[img drawInRect:rect];
UIImage *tempImg = [UIGraphicsGetImageFromCurrentImageContext() retain];
UIGraphicsEndImageContext();
return [tempImg autorelease];
}
- (UIImage*)imageByCropping:(UIImage *)imageToCrop toRect:(CGRect)rect
{
//create a context to do our clipping in
UIGraphicsBeginImageContext(rect.size);
CGContextRef currentContext = UIGraphicsGetCurrentContext();
//create a rect with the …
Run Code Online (Sandbox Code Playgroud) 如果您是使用C或C++编程的人,没有内存管理的托管语言优势,类型检查或缓冲区溢出保护,使用指针算法,您如何确保您的程序是安全的?您是否使用了大量的单元测试,或者您只是一个谨慎的编码器?你有其他方法吗?
如果我有一个大的HTTP数据包已被拆分成多个TCP数据包,我怎样才能将它们重新组合成一个HTTP数据包?基本上,在数据包的哪个位置,我想知道HTTP数据包何时开始/结束?我似乎无法在TCP标头中看到任何表示HTTP数据包开始或结束的标志/字段.
编辑:跟进回复.如果TCP管理流,它如何知道流何时开始和结束?这是由插座开合决定的吗?某些协议在某种程度上必须能够知道HTTP流/数据包何时开始和结束.这就是我想知道的.
我所处的情况是我在C#中使用数据包嗅探器读取TCP数据包,我希望能够重建HTTP请求/响应/等.像wireshark和其他各种嗅探器一样通过界面.或者,是否有任何C#库可以让您在更高级别进入HTTP流,从而节省了我自己重建HTTP流/数据包的麻烦?
谢谢.
c# ×2
.net ×1
activerecord ×1
ado.net ×1
c ×1
c++ ×1
http ×1
ios ×1
iphone ×1
jar ×1
java ×1
javascript ×1
macos ×1
memory-leaks ×1
modal-view ×1
objective-c ×1
osx-leopard ×1
packet ×1
pointers ×1
python ×1
sniffer ×1
tcp ×1