小编Luc*_*s B的帖子

#if DEBUG vs.条件("DEBUG")

在大型项目中使用哪个更好,为什么更好:

#if DEBUG
    public void SetPrivateValue(int value)
    { ... }
#endif
Run Code Online (Sandbox Code Playgroud)

要么

[System.Diagnostics.Conditional("DEBUG")]
public void SetPrivateValue(int value)
{ ... }
Run Code Online (Sandbox Code Playgroud)

c# debugging preprocessor debug-symbols

416
推荐指数
6
解决办法
28万
查看次数

具有多个参数的线程

有谁知道如何将多个参数传递给Thread.Start例程?

我想扩展类,但C#Thread类是密封的.

以下是我认为代码的样子:

...
    Thread standardTCPServerThread = new Thread(startSocketServerAsThread);

    standardServerThread.Start( orchestrator, initializeMemberBalance, arg, 60000);
...
}

static void startSocketServerAsThread(ServiceOrchestrator orchestrator, List<int> memberBalances, string arg, int port)
{
  startSocketServer(orchestrator, memberBalances, arg, port);
}
Run Code Online (Sandbox Code Playgroud)

顺便说一下,我用不同的协调器,天平和端口启动了许多线程.请考虑线程安全.

.net c# parameters multithreading thread-safety

37
推荐指数
6
解决办法
8万
查看次数

在Oracle中的ORDER BY之后+0是什么意思

我试图理解这个Oracle 9i查询末尾的+0是什么意思:

SELECT /*+ INDEX (a CODE_ZIP_CODE_IX) */ 
       a.city, 
       a.state, 
       LPAD(a.code,5,0)  ZipCode, 
       b.County_Name     CoName, 
       c.Description     RegDesc, 
       d.Description     RegTypeDesc  
FROM TBL_CODE_ZIP a, 
     TBL_CODE_COUNTY b, 
     TBL_CODE_REGION c, 
     TBL_CODE_REGION_TYPE d  
WHERE a.City = 'LONDONDERRY' 
    AND a.State = 'NH' 
    AND lpad(a.Code,5,0) = '03038' 
    AND a.Region_Type_Code = 1 
    AND b.County(+) = a.County_Code  
    AND b.STATE(+) = a.STATE 
    AND c.Code(+) = a.Region_Code  
    AND d.Code(+) = a.Region_Type_Code  
ORDER BY a.Code +0
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

注意:我不认为它与升序或降序有关,因为我无法在a.Code和+0之间添加asc或desc,我可以在+0之后添加asc或desc

sql sorting oracle oracle9i

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

如何模拟OracleConnection和OracleCommand?

对于我的测试,我需要模拟数据客户端,在我的情况下,他们是Oracle.

我创建了我的数据访问层以允许传入:

public static Int32? GetUserRoleId(string userName, OracleConnection cn, OracleCommand cmd)
Run Code Online (Sandbox Code Playgroud)

我正在使用Moq,虽然我可以根据需要切换到另一个框架,当我去创建像这样的Mock对象时:

Mock<OracleConnection> mockOracleConnection = new Mock<OracleConnection>();
Mock<OracleCommand> mockOracleCommand = new Mock<OracleCommand>();
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

失败:System.ArgumentException:类型为mock必须是接口或抽象或非密封类.

结论: 这比我想象的更简单!只需像这样模拟DAL层函数:

mockDao.Setup(a => a.GetUserRoleId(userName, It.IsAny<OracleConnection>(), It.IsAny<OracleCommand>())).Returns(1);
Run Code Online (Sandbox Code Playgroud)

c# oracle unit-testing moq

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

在云端开发,但通过远程桌面通过USB在本地设备上调试Android应用程序

我已经能够使用android SDK安装Eclipse,并让我的Android应用程序编译,DEBUG并在本地桌面上运行.

现在我想做同样的事情,但通过与远程桌面的连接,基本上是云中的服务器.

关于做什么需要的任何想法?我对调试特别感兴趣.

我尝试过简单地连接设备并在远程设置中启用它.我需要启用/安装其他东西吗?我需要在ADB桥上配置什么?

cloud android remote-debugging

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

希望设计一个工具,将业务逻辑从存储过程转换为C#业务层

没有讨论业务逻辑应该在数据库中还是在应用程序层,因为它已经被其他地方所覆盖.

我的团队正在翻译100K +行的PL/SQL代码,并将逻辑从数据库移到应用程序中.我们使用VB6直接调用Oracle 9i存储过程和Ad-hoc查询,现在使用C#,.net 3.5,Winforms和NHibernate到Oracle 9i数据库.

我们已经找到了一个很好的工具来帮助转换Ad-hoc查询SmartCode,但它只创建基于表和视图的代码.我们正在寻找一种工具来协助转换存储过程.

存储过程中包含我们要迁移到应用程序层的大部分业务逻辑.我们想知道是否有任何工具可以将存储过程转换为C#代码.

假设没有,如果我们开发内部/开源工具,最好的起点是什么.是否有其他类似的系统具有类似的目标,可以用作起点?

接受的答案更新: 我选择了范围蠕变的答案,因为它似乎是实现问题中提出的问题的最佳方法.对于那些处理同一问题的人,我衷心地推荐Adam的回应,因为他强烈主张反对使用工具并提供强有力的理由.他还提供了与这个问题最多的互动,并且得到了最多的投票反应.

感谢大家的帮助和对话.

c# nhibernate oracle9i

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

隐藏等于和引用等于

我正在创建一个内部类来为 Contract 模式提供一个构造。

using System;
using System.Runtime.Serialization;

namespace DCS2000.Common35.Core
{
  public class Assertion
  {
    public static void Ensure(bool test)
    {
        if (!test)
        {
            throw new PreconditionException("Precondition test failed");
        }
    }

    public static void Ensure(object obj)
    {
        if (obj == null)
        {
            throw new PreconditionException("Precondition null object failed");
        }
    }

    public static void Require(bool test)
    {
        if (!test)
        {
            throw new PostconditionException("Postcondition test failed");
        }
    }

    public static void Require(object obj)
    {
        if (obj == null)
        {
            throw new PostconditionException("Postcondition null …
Run Code Online (Sandbox Code Playgroud)

c# intellisense visual-studio-2008

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

如何防止隐藏或覆盖公共财产

我有一个抽象的基类,它有一个属性,我想防止隐藏,也就是新的,并覆盖.

public abstract class DomainObject
{
    public bool IsDeleted { get; set; }
}

public class BankAccount : DomainObject
{
    public bool IsDeleted { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

问题是:我需要BankAccount继承基础DomainObject类,所以我不能将其标记为密封,但我想在编译时防止IsDeleted的情况,一个覆盖或新的.

c# oop inheritance compiler-errors

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

版本之间的参考.NET Framework

我有一个使用版本3.5编译的C#编写的程序集,它使用WCF.此库必须由另一个用vb.net编写的应用程序使用,该应用程序是使用2.0版编译的外部公司.

可能吗 ?

.net wcf .net-3.5 .net-2.0

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