using-statement相关内容
C# 中 Using 块的用途是什么?它与局部变量有何不同? 解决方案 如果该类型实现了 IDisposable,它会自动释放该类型. 给定: 公共类 SomeDisposableType : IDisposable{...实施细节...} 这些是等价的: SomeDisposableType t = new SomeDisposableType();尝试 {操作类型(t);}
..
在我的 DAL 中,我编写如下查询: using(SQLConnection conn = "这里的连接字符串"){SQLCommand cmd = new ("sql 查询", conn);//执行它等等} 现在我突然想到我没有明确关闭 SQLCommand 对象.现在我知道“使用"块会处理 SQLConnection 对象,但这也会处理 SQLCommand 对象吗?如果不是那么我有一个严
..
我最近停止使用 using-statements 而是使用任何 的完整命名空间路径.net 我调用的对象. 例子: 使用系统;命名空间 QuizViewer{类 Class1{Console.WriteLine("Hello World!");}} 这就是我现在所做的. 命名空间 QuizViewer{类 Class1{System.Console.WriteLine("Hello W
..
我一直使用 with 变量和赋值.现在我有这样一个 DbProviderConnection 类: 公共类 DbProviderConnection : IDisposable{公共 DbConnection 连接 { 获取;放;}公共 DbTransaction 事务 { 获取;放;}公共 DbTransaction BeginTransaction(){交易 = Connection.Beg
..
我在 using 语句中有一个 IDbTransaction,但我不确定如果在 using 语句中抛出异常,它是否会回滚.我知道 using 语句将强制调用 Dispose()...但是有谁知道 Rollback() 是否也是如此? 更新:另外,我是否需要像下面那样显式调用 Commit() 或者这也会由 using 语句处理? 我的代码看起来像这样: 使用 Microsoft.Pr
..
我注意到很多来回的一件事是 using 语句应该放在 C# 代码文件中的什么地方 - 无论是在最外层的范围内还是在命名空间内.我知道 using 语句的位置会影响该文件中引用的范围,但我不明白的是,为什么在大多数情况下,有人希望在其命名空间中使用 using 语句. 在几乎所有情况下在单个文件中只存在一个命名空间声明,因此定义 using 语句的范围似乎/(是?)没用.如果在同一个文件中放置
..
我有一种情况,我正在对返回和 IDisposable 实例的方法进行 async 调用.例如: HttpResponseMessage response = await httpClient.GetAsync(new Uri("http://www.google.com")); 现在在 async 出现之前,当使用 IDisposable 实例时,使用“response"变量的这个调用和代码将
..
Java 有没有可以在 hibernate 中打开会话时使用的 using 语句? 在 C# 中是这样的: using (var session = new Session()){} 因此对象超出范围并自动关闭. 解决方案 Java 7 引入 自动资源块管理,将这一特性引入到 Java 平台.以前的 Java 版本没有任何类似于 using 的东西. 例如,您可以通过以下方
..
我有一堆要使用读/写锁的属性.我可以使用 try finally 或 using 子句来实现它们. 在try finally 中,我会在try 之前获取锁,并在finally 中释放.在 using 子句中,我将创建一个类,该类在其构造函数中获取锁,并在其 Dispose 方法中释放. 我在很多地方都使用了读/写锁,所以我一直在寻找比try finally更简洁的方法.我很想听听一些关
..
我有一个 C# 解决方案,其中包含 Visual Studio 2010 中的多个项目.一个是测试项目(我称之为“PrjTest"),另一个是Windows Forms Application 项目(我称之为“PrjForm").还有一个PrjForm引用的第三个项目,可以成功引用使用. PrjForm 引用了 PrjTest,并且 PrjForm 有一个带有 using 语句的类: 使用
..
C# 中 Using 块的用途是什么?它与局部变量有何不同? 解决方案 如果类型实现了 IDisposable,它会自动处理该类型. 给定: public class SomeDisposableType : IDisposable{...实现细节...} 这些是等价的: SomeDisposableType t = new SomeDisposableType();尝试 {操
..
用户 kokos 回答了精彩的C# 的隐藏特性 问题,提及 using 关键字.你能详细说明一下吗?using有什么用? 解决方案 using 语句的原因是为了确保对象一旦超出范围就被销毁,并且不会不需要显式代码来确保发生这种情况. 如了解“使用"C# 中的语句(代码项目) 和 使用实现 IDisposable (microsoft) 的对象,C# 编译器进行转换 using (M
..
可能的重复: try/catch + using,正确的语法 我想try/catch以下内容: //写入文件使用 (StreamWriter sw = File.AppendText(filePath)){sw.WriteLine(消息);} 我是将 try/catch 块放在 using 语句中,还是放在它的周围,或者两者兼而有之? 解决方案 如果你的 catch 语句需要访
..
有没有什么方法可以重构这段代码,使其不必使用临时变量,而仍然使用与对象初始值设定项相关的语法糖? FrmSomeForm someTempForm = new FrmSomeForm(){SomePropA = "A",SomePropB = "B",SomePropC = "C"};使用 (FrmSomeForm someForm = someTempForm){someForm.ShowDi
..
在创建实现 IDisposable 的元素时,如果抛出异常,也会在 using 块的末尾调用 Dispose(),如果我是正确的话. 但是,当在一次性元素的构造函数中创建 ClassB 的新元素时,如果实现了 IDisposable ,是否也会处理ClassB的对象? 使用(ClassA a = new ClassA(new ClassB())){} 这可能适用于与 Stream 相关
..
我正在使用Visual Studio 2017编写C#应用程序.我努力利用"using"语句处理所有实例化的对象.如果我实例化对象不是基于隐式可转换为'System.IDisposable'的类型,Visual Studio会警告我.此示例导致VS显示警告(C#): using(uri =新的System.Uri(stringVarWithPath)){} 所有未实现Dispose方法的类
..
出于实用性考虑,这两个课程都是一次性的. 我了解using块的作用.但是我不确定它可以使用或需要使用的所有方式. 例如,这是正确的吗? 使用(MyClass myClass = new MyClass(params)){myClass.name =“史蒂夫";SecondClass myClassSecond =新的SecondClass(params);myClassSecond.
..
有人知道一种自动找到任何变量的方法吗,其中该类型实现IDisposable但未使用using构造? 即.一种检查潜在未释放的非托管资源的方法? 还可以查看正在运行的应用程序所拥有的资源的数量和类型吗? 解决方案 对此有一个代码分析规则: http://msdn.microsoft.com/zh-cn/library/ms182289%28VS.100%29.aspx
..
我有两个问题. 1)是否应该始终在连接上使用using语句?那么,我会在连接上使用它,然后在连接内的阅读器上使用它吗?因此,我将使用两个using语句. 2)假设您在连接上使用了using语句,并且在连接上还返回了阅读器.因此,您有两个using语句.它会创建两个Try {} Finally {}块还是一个? 谢谢! 解决方案 当对象实现 IDisposable 时,
..
当变量是IDisposable时,我们使用using关键字来管理处置.但是,如果我们在方法中返回该值,应该两次出现using吗? StringContent stringToStringContent(string str) { using (StringContent content = new StringContent(str)) { return co
..