小编Cri*_*scu的帖子

如何在发布模式下为.net托管项目生成PDB?

我知道通过给编译器/ debug参数为.NET中的托管项目生成PDB .有没有办法在VS(2005)GUI中指定它?

到目前为止,我能够在发布模式下生成PDB的唯一方法是手动修改.csproj文件并添加:

<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
Run Code Online (Sandbox Code Playgroud)

在'发布'设置下:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
Run Code Online (Sandbox Code Playgroud)

另一件事:我在MSDN上从这里了解到DebugType标签的可能值是:

  • full
  • pdbonly
  • none

这些值如何影响编译器的行为?

.net msbuild debug-symbols release-mode

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

Resharper 5 - 即时启用/禁用

我想在调试时禁用ReSharper 5 - 它比我愿意放慢速度.

有自动方法吗?

最好的事情是工具栏按钮,以手动启用/禁用它.

在工具 - >选项 - > ReSharper页面上,有一条注释,VS命令Resharper_ToggleSuspended将执行此操作. alt text http://img697.imageshack.us/img697/2126/resharpersuspend.png

问题是,当我右键单击工具栏时我找不到命令 - >自定义... - >'命令'选项卡 - >选择'Resharper'类别.

alt text http://img231.imageshack.us/img231/1928/commands.png

我错过了什么吗?

resharper visual-studio

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

动态验证EmberJS TextField?

我需要验证使用EmberJS绑定到模型属性的表单文本字段.我希望用户只能输入有效的正数.

我知道jQuery.isNumber(),但我不知道如何将它连接到字段.我尝试使用Ember.computed(...)在模型的属性上编写显式的getter/setter函数,但它不起作用.

是否有类似于我可以连接的WinForms onChanging()事件?

html javascript validation ember.js

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

Java隐式转换会导致精度或幅度损失吗?

我最近了解到,在将一些Java代码转换为C#时,Java的增量运算符'+ ='隐式转换为LHS的类型:

int i = 5;
long lng = 0xffffffffffffL;  //larger than Int.MAX_VALUE
i += lng;                    //allowed by Java (i==4), rejected by C#
Run Code Online (Sandbox Code Playgroud)

相当于:( 详情请点击此处)

int i = 0;
long lng = 0xffffffffffffL;
i = (int)(i + lng);
Run Code Online (Sandbox Code Playgroud)

因此默默地造成了失去规模的机会.

C#在编译时对此更加认真:
Cannot convert source type long to target type int.

Java是否还允许其他类似的情况?

java precision compiler-errors

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

搜索并替换C#表达式

我一次又一次地发现自己需要改变一个方法调用的使用.

例如,我有100次类似于此的方法调用:

Helper.GetIntFromData(packetData.Skip(offset).Take(length).ToArray());
Run Code Online (Sandbox Code Playgroud)

需要改为

Helper.GetIntFromData(packetData, offset, length);
Run Code Online (Sandbox Code Playgroud)

这可以通过正则表达式相对容易地解决.但是,如果空白(有时)发挥作用怎么办?

Helper.GetIntFromData(packetData
    .Skip(  offset  )
    .Take(  length  )
    .ToArray()  
);
Run Code Online (Sandbox Code Playgroud)

仍然可以使用正则表达式,但它现在是一个无法读取的可选空格标记混乱.

好的,但如果参数不总是简单的标识符,而是任意表达式怎么办?

Helper.GetIntFromData(obj.GetData(true).Skip( 7 + GetOffset( item.GetData() ) )
    .Take( length1 / length2 ).ToArray());
Run Code Online (Sandbox Code Playgroud)

这是正则表达式真正崩溃的地方.

我的问题是:

这可以在今天完成吗?(以某种方式让你保持理智,即没有正则表达式)

是否有VS扩展或独立工具可以处理更高(语义)级别的C#代码?

可以让我搜索的东西(我想象):

Helper.GetIntFromData($expr1.Skip($expr2).Take($expr3).ToArray())
Run Code Online (Sandbox Code Playgroud)

并替换为

Helper.GetIntFromData($1, $2, $3)
Run Code Online (Sandbox Code Playgroud)

C#是否存在这样的工具?(我想它可以围绕罗斯林建造.)

c# regex visual-studio roslyn

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

可以使用Regex进行这种特殊的字符串操作吗?

我需要在字符串中用字符(比如说)P替换字符(比如说)x,但前提是它包含在带引号的子字符串中.一个例子使它更清楚:

axbx'cxdxe'fxgh'ixj'k  -> axbx'cPdPe'fxgh'iPj'k
Run Code Online (Sandbox Code Playgroud)

为简单起见,我们假设引号总是成对出现.

显而易见的方法是一次只处理一个字符串(简单的状态机方法);
但是,我想知道是否可以使用正则表达式一次完成所有处理.

我的目标语言是C#,但我想我的问题与任何具有内置或支持正则表达式的语言有关.

c# python regex language-agnostic

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

列出列表中的每个第二个对象

我有一个IEnumerable,我希望得到一个包含每个第n个元素的新IEnumerable.

这可以在Linq完成吗?

.net c# linq linq-to-objects

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

具有可触发初始化的C#Singleton模式

我需要一个单身人士:

  • 很懒
  • 是线程安全的
  • 在施工时加载一些值
  • 可以随时查询这些值
  • 初始化可能在查询开始之前的某个精确时间发生 - 所以我必须能够以某种方式从外部触发它.当然,多次触发应该只进行一次初始化.

我使用.NET 3.5.

我使用静态子类开始使用Jon Skeet的实现(第5版):

public sealed class Singleton
{
    IEnumerable<string> Values {get; private set;}
    private Singleton()
    {
        Values = new[]{"quick", "brown", "fox"};
    }

    public static Singleton Instance { get { return Nested.instance; } }

    private class Nested
    {
        // Explicit static constructor to tell C# compiler
        // not to mark type as beforefieldinit
        static Nested()
        {
        }

        internal static readonly Singleton instance = new Singleton();
    }
} 
Run Code Online (Sandbox Code Playgroud)

除了"从外部触发初始化"之外,几乎所有方框都会打勾.由于实际初始化发生在ctor内部,因此不会发生多次.

如何实现这一目标?

单身将使用如下: …

.net c# singleton initialization

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

EF4 Code First + SQL Server CE:以原子方式保存双向引用

我想保存一些具有双向关系的实体(两端的导航属性).这是通过2次调用来完成的context.SaveChanges().

[关于我的模型,映射以及我如何到达那里的完整细节都在折叠之后.]

public void Save(){

     var t = new Transfer();
     var ti1 = new TransferItem();
     var ti2 = new TransferItem();

     //deal with the types with nullable FKs first
     t.TransferIncomeItem = ti1;
     t.TransferExpenseItem = ti2;

     context.Transfers.Add(t);
     context.Operations.Add(ti1);
     context.Operations.Add(ti2);

     //save, so all objects get assigned their Ids
     context.SaveChanges();

     //set up the "optional" half of the relationship
     ti1.Transfer = t;
     ti2.Transfer = t;
     context.SaveChanges();
} 
Run Code Online (Sandbox Code Playgroud)

一切都很好,但如果在两次调用之间发生雷击,确保数据库不一致怎么样SaveChanges()

输入TransactionScope...

public void Save(){
    using (var tt = new TransactionScope())
    { …
Run Code Online (Sandbox Code Playgroud)

transactions sql-server-ce entity-framework-4 ef-code-first

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

Java:格式说明符%x和%h之间有什么区别?

看一下规范页面,我看到%h调用Integer.toHexString(),但是我找不到两个说明符之间的任何实际区别.

您能举例说明在同一输入上使用to说明符会产生不同的结果吗?

System.out.println(String.format("%1$h %1$x", 123));
Run Code Online (Sandbox Code Playgroud)

这打印

7b 7b
Run Code Online (Sandbox Code Playgroud)

java format

6
推荐指数
3
解决办法
9062
查看次数