6

我正在逐步浏览 .Net Framework 源代码以找到一个棘手的错误(HttpApplication.cs),并且我注意到代码中有这样的行(这些是复制/粘贴,我没有编辑任何内容):

_[....] = true;

_[....] = false;

我想知道这是否是混淆代码,或者这是我以前从未见过的某种 c# 约定?VS 2012 似乎认为它不是真正的代码。

任何人都可以启发我吗?

4

3 回答 3

8

实际 HttpApplication.cs 代码中存在的字段名称是“_sync”。有一个自动化工具,它在向公众发布之前在源代码上运行;该工具会清除开发人员姓名等内容。看起来这只是误报。我将与适当的团队一起提出它,看看是否可以纠正它。

于 2012-08-24T18:20:44.420 回答
1

这个特殊的标记似乎出现.NET 参考源代码中。它在注释中的使用频率远高于作为变量使用,但HttpApplication.cs不是它显示的唯一位置(例如,WeakKeyDictionary将其用作lock目标。)

在很多情况下。它是“同步”一词的同义词,如:

InstancePersistenceContext.cs:1586: Fx.AssertAndThrowFatal(this.context.Active, 
    "Out-of-[....] between InstanceExecutionContext and ExecutionAsyncResult.");

EditModeSwitchButton.cs:64: // [....] to the owning PropertyContainer only if requested to do so

我最喜欢的,来自一个过时的System.Web.Mobuile课程:

TemporaryBitmapFile.cs: private void [....]()

关于它的来源,我最好的猜测是,它是在向公众发布之前在源代码上完成的预发布步骤(它出现在我找到的参考源的每个副本中,但不是SSCLI不久前发布。比较,例如RemotingProxy.cs:222

SSCLI: int callType = Message.Sync;
RefSec: int callType = Message.[....];
于 2012-08-24T18:14:38.757 回答
0

你是对的,源代码包含一个名为的布尔变量 _[....]。我猜在编写代码时无法确定变量的名称;后来忘记修了。 http://reflector.webtropy.com/default.aspx/Net/Net/3@5@50727@3053/DEVDIV/depot/DevDiv/releases/whidbey/netfxsp/ndp/fx/src/xsp/System/Web/ HttpApplication@cs/10/HttpApplication@cs

于 2012-08-24T15:18:39.947 回答