问题列表 - 第30697页

从Dispose()触发事件是否可以?

在我当前的项目中,我正在使用实现以下ITransaction界面的类.这是可以撤消的事务的通用接口.我还有一个TransactionSet用于尝试多个Transactions或TransactionSets的类,最终可用于创建事务树.

一些实现ITransaction保持对对象实例或文件的临时引用,如果有调用,它可以在以后使用Undo().稍后可以确认成功的事务,之后Undo()不再允许该事务,因此也不再需要临时数据.目前我正在使用Dispose()我的确认方法来清理任何临时资源.

但是,现在我希望我的交易也会触发事件,以通知其他类已发生的事情.除非事务得到确认,否则我不希望事件触发.因为我不希望允许事务通过撤消多次触发事件然后再次运行.

因为我Dispose()用来确认交易是否有任何错误从它发射这些事件?或者更好的是Confirm()在我的界面上有一个单独的方法可以触发事件,另外Dispose()清理临时数据?我想不出任何我想要确认但不处理交易的情况.然而,我并不完全清楚我应该和不应该做什么Dispose().

public enum TransactionStatus
{
    NotRun, // the Transaction has not been run, or has been undoed back to the original state
    Successful, ///the action has been run and was successful
    Error //there was an attempt to run the action but it failed
}

/// <summary>
/// Generic transaction interface
/// </summary>
public interface ITransaction
{
    TransactionStatus …
Run Code Online (Sandbox Code Playgroud)

.net c# transactions idisposable

9
推荐指数
2
解决办法
1434
查看次数

给定一个任意的javascript对象,我怎样才能找到它的方法?

我知道这在python中是可能的,但是我可以获得javascript对象的方法列表吗?

javascript reflection

7
推荐指数
2
解决办法
3297
查看次数

Shoes.rb可以创建自包含的应用程序吗?

令人鼓舞的是,Shoes(Ruby GUI框架)具有出色的打包功能,但我担心它实际上并没有"围绕"创建的应用程序.OSX的包装在.app系统中输出鞋子安装程序和鞋子文件.有没有什么方法可以创建一个包含鞋子的.app - 这不会让你安装鞋子来运行它?

我正在创建一个小应用程序 - 只是一个启动按钮和一个子进程的停止按钮等.

ruby macos user-interface shoes distribution

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

双点内存分配

char**r; r =(char**)malloc(10);

上面的分配是否足够?我不需要为char循环分配for循环吗?任何可以解释哪一个是正确的?

c pointers

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

单元测试中的错误多于生产代码中的错误

我刚刚开始一个新项目,现在ASP.NET MVC以极其可组合的方式设计,我认为这可能是开始单元测试的好时机.我的大多数代码都是新鲜的,我在编写实际的生产代码之前编写了测试.

不过,我的挫败感是,我花了很多时间来修复测试中的错误,而不是修复我的生产测试中的任何错误.

我的典型工作流程最终会是这样的:

  1. 写一个存根
  2. 写测试
  3. 确保测试失败
  4. 填写存根
  5. 测试仍然失败,因此花一些时间来检查预期和实际输出.
  6. 错误结果是在测试中,而不是实际的代码.修复测试.

如果你考虑一下,这有点令人期待:单元测试涉及手动产生输出,因此容易出错; 用严格的语言和良好的编码实践编写的代码具有非常自动指定的行为.

当然,有些奇怪的时候,我的生产代码是测试失败的真正原因,但它确实相当罕见.

当然,没有理由完全取消单元测试; 有时我完全不相信自己的代码.另一方面,我开始觉得它并不是那么有价值 - 特别是测试第一哲学.

其他人都有这种感觉吗?

tdd unit-testing

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

.NET Framework中使用了哪些设计模式?

.NET Framework中的哪些类实现了各种设计模式,如装饰器,工厂等?

.net design-patterns

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

使用RemoveChild()删除子节点

我想删除这个节点,例如:

<Sample ID="544" Type="0">Sample2</Sample>

从这个XML,例如:

 <Tests> <Test ID="0" AllowMultipleSelect="1">
  <Name>BaseSamples</Name>
  <Sample ID="546" Type="0">Sample1 </Sample>
  <Sample ID="135" Type="0">Sample45</Sample>
  <Sample ID="544" Type="0">Sample2</Sample>
  <Sample ID="5818" Type="0" >Sample78</Sample>
  </Test>
  </Tests>
Run Code Online (Sandbox Code Playgroud)

所以我的结果是这样的:

 <Tests> <Test ID="0" AllowMultipleSelect="1">
  <Name>BaseSamples</Name>
  <Sample ID="546" Type="0">Sample1 </Sample>
  <Sample ID="135" Type="0">Sample45</Sample>
  <Sample ID="5818" Type="0" >Sample78</Sample>
  </Test>
  </Tests>
Run Code Online (Sandbox Code Playgroud)

我可以一次删除任何一个节点(因为我放了一个循环来检查需要删除的样本ID)任何帮助将不胜感激,提前感谢.

c# xml removechild

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

C#.Net Windows应用程序 - 在My NT中获取记录的用户名

我需要获取在我的局域网中登录特定机器的用户名.建议我通过在C#.net windows应用程序中传递机器名来获取用户名的最佳方法.还要考虑许可.

谢谢

.net winforms c#-2.0

5
推荐指数
2
解决办法
9572
查看次数

iphone - 我如何检查NSMutableArray ObjectAtIndex是否没有任何值

如果objectatIndex有任何值,我如何检查数组?即时通讯使用forloop

for (i = 0; i < 6 ; i++)
{
    if ([array objectAtIndex: i] == NULL)//This doesnt work.
    {
        NSLog(@"array objectAtIndex has no data");
    }
}
Run Code Online (Sandbox Code Playgroud)

iphone

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

为什么java不能将类型作为参数?

为什么java不能将类型作为参数?

例如,不能有编译器检查类型的实数的向量.

(例子来自http://www.ics.uci.edu/~kibler/javacourse/java.html)

java

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