[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 什么意思?

嘴哥臭鼬 2009-02-23 11:02:24
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public int LiveDays {
get {
try {
return ((int)(this[this.tableMediaBuySpending.LiveDaysColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'LiveDays\' in table \'MediaBuySpending\' is DBNull.", e);
}
}
set {
this[this.tableMediaBuySpending.LiveDaysColumn] = value;
}
}


如上面的属性什么意思啊?


...全文
2065 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
虾说说 2011-07-09
  • 打赏
  • 举报
回复
学习下
qiutuanzhun 2009-06-08
  • 打赏
  • 举报
回复
学习
wang450001 2009-05-11
  • 打赏
  • 举报
回复
学习下
shalen520 2009-02-23
  • 打赏
  • 举报
回复 1
标识不属于应用程序用户代码的类型或成员。

命名空间:System.Diagnostics
程序集:mscorlib(在 mscorlib.dll 中)


备注
如果设计器提供的类型和成员不是由用户专门创建的代码的一部分,则会增加调试过程的复杂性。此属性禁止在调试器窗口中显示这些附属类型和成员,并自动逐句通过而不会进入并单步执行设计器提供的代码。当逐句通过用户代码时,如果调试器遇到此属性,用户将不会看到设计器提供的代码,并且会执行用户提供的下一条代码语句。

注意
公共语言运行库不向该属性附加任何语义。提供它供源代码调试器使用。例如,在 Visual Studio 2005 中,调试器不会在调试器窗口中显示具有此属性的元素,不会在具有此属性的某方法中停止,不允许在方法中设置断点。


存在 DebuggerNonUserCodeAttribute 时,调试器的行为与组合使用 DebuggerHiddenAttribute 属性(该属性对调试器隐藏代码)和 DebuggerStepThroughAttribute 属性(该属性告知编译器逐句通过而不是进入并单步执行应用它的代码)时的行为相似。
king19840811 2009-02-23
  • 打赏
  • 举报
回复
如果一个工程是以release方式进行编译构建的话(就是工程中,没有pdb文件),调试器会将其认为是非用户代码,那么在调试运行时,就根本不会进入该工程中进行调试。其次,可以使用System.Diagnostics命名空间里的DebuggerNonUserCodeAttribute属性,将其应用在希望不进行调试的代码段中。

  下面举一个例子来说明。下面的代码段中,有两个静态方法UserCode()和NonUserCode(),其中,在NonUserCode()中,是应用了DebuggerNonUserCode的属性,这表明这段代码将在调试运行时,调试器不会进入其中。将断点设置在其中的第9行,运行程序,程序会在第一个UserCode()里中断,现在试着用F11继续单步跟踪,会发现系统在进入usercode()方法中运行后,并没有进入到NonUserCode()里运行。

using System;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
// Step into F11 from here
UserCode();// Place break point on this line
NonUserCode();
UserCode();
}
static void UserCode()
{
Console.WriteLine("This is a call from user Code");
}
// Attribute to indicate the Debugger to jump
// over this method
[DebuggerNonUserCode]
static void NonUserCode()
{
Console.WriteLine("This is a call fron Non User Code");
}
}

che2piaopiao 2009-02-23
  • 打赏
  • 举报
回复
namespace Bincess.Components {
using System;


/// <summary>
/// 强类型资源类,用于查找本地化字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class MyResources {

private static global::System.Resources.ResourceManager resourceMan;

private static global::System.Globalization.CultureInfo resourceCulture;

[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal MyResources() {
}

/// <summary>
/// 返回此类使用的缓存 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Bincess.Components.MyResources", typeof(MyResources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}

che2piaopiao 2009-02-23
  • 打赏
  • 举报
回复
/// 返回此类使用的缓存 ResourceManager 实例。
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WcfServer.Common.Resource.Resource1", typeof(Resource1).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
内容概要:本文围绕“单相逆变器闭环逆变电路PWM模型仿真研究”展开,基于Simulink平台构建单相逆变器的闭环控制系统仿真模型,重点研究PWM调制技术在逆变电路中的应用与实现。文中详细阐述了系统架构设计、电压电流双闭环控制策略的实现原理、控制器参数设计及仿真建模全过程,并通过仿真结果验证了控制方案在动态响应、稳态精度与系统稳定性方面的有效性。同时,文档还涵盖多种电力电子系统典型应用场景,如多类型短路故障仿真(中性点不接地、经小电阻接地、经消弧线圈接地等)、软开关技术、微电网能量管理、MPPT控制等,体现出较强的技术综合性和工程实践价值。; 适合人群:电气工程、自动化、电力电子与新能源等相关专业的高校本科生、研究生、科研人员,以及从事电力系统仿真、逆变器设计与新能源并网技术研发的工程技术人员。; 使用场景及目标:①掌握基于Simulink的单相逆变器闭环控制系统建模与PWM仿真方法;②深入理解双闭环控制、SPWM/SVPWM调制、系统稳定性分析等核心技术原理;③为课程设计、毕业设计、科研项目或实际工程开发提供可复用的仿真模型与技术支持; 阅读建议:建议结合文中仿真模型动手实践,重点掌握PI控制器参数整定、PWM信号生成机制与仿真结果分析方法,同时可延伸学习文档中涉及的软开关、故障仿真、微电网控制等关联技术,以拓展系统级设计能力。

111,131

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧