• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# CodeDom.CodeMethodReferenceExpression类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中System.CodeDom.CodeMethodReferenceExpression的典型用法代码示例。如果您正苦于以下问题:C# CodeMethodReferenceExpression类的具体用法?C# CodeMethodReferenceExpression怎么用?C# CodeMethodReferenceExpression使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



CodeMethodReferenceExpression类属于System.CodeDom命名空间,在下文中一共展示了CodeMethodReferenceExpression类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: Constructor0

		public void Constructor0 ()
		{
			CodeMethodReferenceExpression cmre = new CodeMethodReferenceExpression ();

			Assert.IsNotNull (cmre.MethodName, "#1");
			Assert.AreEqual (string.Empty, cmre.MethodName, "#2");
			Assert.IsNull (cmre.TargetObject, "#3");

#if NET_2_0
			Assert.IsNotNull (cmre.TypeArguments, "#4");
			Assert.AreEqual (0, cmre.TypeArguments.Count, "#5");
#endif

			string methodName = "mono";
			cmre.MethodName = methodName;
			Assert.IsNotNull (cmre.MethodName, "#6");
			Assert.AreSame (methodName, cmre.MethodName, "#7");

			cmre.MethodName = null;
			Assert.IsNotNull (cmre.MethodName, "#8");
			Assert.AreEqual (string.Empty, cmre.MethodName, "#9");

			CodeExpression expression = new CodeExpression ();
			cmre.TargetObject = expression;
			Assert.IsNotNull (cmre.TargetObject, "#10");
			Assert.AreSame (expression, cmre.TargetObject, "#11");

			cmre.TargetObject = null;
			Assert.IsNull (cmre.TargetObject, "#12");
		}
开发者ID:nlhepler,项目名称:mono,代码行数:30,代码来源:CodeMethodReferenceExpressionTest.cs


示例2: CreateService

        protected override CodeMemberMethod CreateService(CodeTypeReference typerefWCFService, CodeTypeReference typerefService)
        {
            CodeTypeReferenceExpression typerefexprService = new CodeTypeReferenceExpression(typerefService);
            CodeMethodReferenceExpression methodrefDbusServiceCreate = new CodeMethodReferenceExpression(typerefexprService, "Create");

            CodeMemberMethod methodCreateService = new CodeMemberMethod();
            methodCreateService.Name = CreateServiceName;
            methodCreateService.ReturnType = typerefWCFService;
            methodCreateService.Attributes = MemberAttributes.Static;
            methodCreateService.Parameters.Add(new CodeParameterDeclarationExpression(CodeBuilderCommon.typerefWCFServiceParams, nameWCFServiceParamsArg));
            CodeMethodReferenceExpression methodrefCreateDbusService = new CodeMethodReferenceExpression(CodeBuilderCommon.typerefexprLookupTargetFunctions, CodeBuilderCommon.CreateDbusService);
            methodrefCreateDbusService.TypeArguments.Add(typerefService);

            methodCreateService.Statements.Add(new CodeVariableDeclarationStatement(typerefService, dbusService, // * <dbus_service> dbusService =
                new CodeMethodInvokeExpression(methodrefCreateDbusService // * Udbus.WCF.Dbus.Service.LookupTargetFunctions.CreateDbusService(
                    , argrefWCFServiceParams // * wcfserviceparams
                    , methodrefDbusServiceCreate // * , <dbus_service>.Create // createService1
                    , methodrefDbusServiceCreate // * , <dbus_service>.Create // createService2
                    , new CodePropertyReferenceExpression(typerefexprService, CodeBuilderCommon.DefaultConnectionParameters) // * <dbus_service>.DefaultConnectionParameters);
                )
            ));

            // * <wcfservice> wcfService = new <wcfservice>(dbusservice);
            methodCreateService.Statements.Add(new CodeVariableDeclarationStatement(typerefWCFService, wcfService
                , new CodeObjectCreateExpression(typerefWCFService, varrefDbusService)
            ));

            // return wcfService;
            methodCreateService.Statements.Add(new CodeMethodReturnStatement(varrefWcfService));
            return methodCreateService;
        }
开发者ID:jean-edouard,项目名称:win-tools,代码行数:31,代码来源:WCFPassthruHostBuilder.cs


示例3: CodeMethodInvokeExpression

		public CodeMethodInvokeExpression (CodeExpression targetObject,
						   string methodName,
						   params CodeExpression [] parameters)
		{
			this.method = new CodeMethodReferenceExpression( targetObject, methodName );
			this.Parameters.AddRange (parameters);
		}
开发者ID:NelsonSantos,项目名称:fyiReporting-Android,代码行数:7,代码来源:CodeMethodInvokeExpression.cs


示例4: CreateMethod

		CodeMemberMethod CreateMethod()
		{
			CodeMemberMethod method = new CodeMemberMethod();
			
			// BeginInit method call.
			CodeExpressionStatement statement = new CodeExpressionStatement();
			CodeMethodInvokeExpression methodInvoke = new CodeMethodInvokeExpression();
			statement.Expression = methodInvoke;
			
			CodeMethodReferenceExpression methodRef = new CodeMethodReferenceExpression();
			methodRef.MethodName = "BeginInit";
			
			CodeCastExpression cast = new CodeCastExpression();
			cast.TargetType = new CodeTypeReference();
			cast.TargetType.BaseType = "System.ComponentModel.ISupportInitialize";
			
			CodeFieldReferenceExpression fieldRef = new CodeFieldReferenceExpression();
			fieldRef.FieldName = "pictureBox1";
			fieldRef.TargetObject = new CodeThisReferenceExpression();
			cast.Expression = fieldRef;

			methodRef.TargetObject = cast;
			methodInvoke.Method = methodRef;

			method.Statements.Add(statement);
			return method;
		}
开发者ID:Rpinski,项目名称:SharpDevelop,代码行数:27,代码来源:GeneratePictureBoxBeginInitTestFixture.cs


示例5: Constructor0

		public void Constructor0 ()
		{
			CodeMethodInvokeExpression cmie = new CodeMethodInvokeExpression ();
			Assert.IsNotNull (cmie.Method, "#1");
			Assert.AreEqual (string.Empty, cmie.Method.MethodName, "#2");
			Assert.IsNull (cmie.Method.TargetObject, "#3");
#if NET_2_0
			Assert.AreEqual (0, cmie.Method.TypeArguments.Count, "#4");
#endif
			Assert.IsNotNull (cmie.Parameters, "#5");
			Assert.AreEqual (0, cmie.Parameters.Count, "#6");

			CodeMethodReferenceExpression method = new CodeMethodReferenceExpression ();
			cmie.Method = method;
			Assert.IsNotNull (cmie.Method, "#7");
			Assert.AreSame (method, cmie.Method, "#8");

			cmie.Method = null;
			Assert.IsNotNull (cmie.Method, "#9");
			Assert.AreEqual (string.Empty, cmie.Method.MethodName, "#10");
			Assert.IsNull (cmie.Method.TargetObject, "#11");
#if NET_2_0
			Assert.AreEqual (0, cmie.Method.TypeArguments.Count, "#12");
#endif
		}
开发者ID:nlhepler,项目名称:mono,代码行数:25,代码来源:CodeMethodInvokeExpressionTest.cs


示例6: Constructor1_Deny_Unrestricted

		public void Constructor1_Deny_Unrestricted ()
		{
			CodeMethodReferenceExpression method = new CodeMethodReferenceExpression ();
			CodeExpression[] parameters = new CodeExpression[1] { new CodeExpression () };
			CodeMethodInvokeExpression cmie = new CodeMethodInvokeExpression (method, parameters);
			Assert.AreSame (method, cmie.Method, "Method");
			cmie.Method = new CodeMethodReferenceExpression ();
			Assert.AreEqual (1, cmie.Parameters.Count, "Parameters");
		}
开发者ID:nlhepler,项目名称:mono,代码行数:9,代码来源:CodeMethodInvokeExpressionCas.cs


示例7: Generate

        public override void Generate(object codeObject, Entity entity)
        {
            var propNode = (CodeMemberProperty) codeObject;
            var property = (GenericProperty) entity;

            var getPropertyValueMethod = new CodeMethodReferenceExpression(null, "GetValue", propNode.Type);
            var getPropertyValueCall = new CodeMethodInvokeExpression(getPropertyValueMethod, new CodePrimitiveExpression(property.Alias));
            propNode.GetStatements.Add(new CodeMethodReturnStatement(getPropertyValueCall));
        }
开发者ID:scy0846,项目名称:Umbraco.CodeGen,代码行数:9,代码来源:PropertyBodyGenerator.cs


示例8: Serialize

 public override object Serialize(IDesignerSerializationManager manager, object value)
 {
     PropertyDescriptor descriptor = (PropertyDescriptor) manager.Context[typeof(PropertyDescriptor)];
     ExpressionContext context = (ExpressionContext) manager.Context[typeof(ExpressionContext)];
     bool flag = (value != null) ? CodeDomSerializerBase.GetReflectionTypeHelper(manager, value).IsSerializable : true;
     bool flag2 = !flag;
     bool flag3 = (descriptor != null) && descriptor.Attributes.Contains(DesignerSerializationVisibilityAttribute.Content);
     if (!flag2)
     {
         flag2 = ((context != null) && (context.PresetValue != null)) && (context.PresetValue == value);
     }
     if (((this._model == CodeDomLocalizationModel.PropertyReflection) && !flag3) && !flag2)
     {
         CodeStatementCollection statements = (CodeStatementCollection) manager.Context[typeof(CodeStatementCollection)];
         bool flag4 = false;
         ExtenderProvidedPropertyAttribute attribute = null;
         if (descriptor != null)
         {
             attribute = descriptor.Attributes[typeof(ExtenderProvidedPropertyAttribute)] as ExtenderProvidedPropertyAttribute;
             if ((attribute != null) && (attribute.ExtenderProperty != null))
             {
                 flag4 = true;
             }
         }
         if ((!flag4 && (context != null)) && (statements != null))
         {
             string name = manager.GetName(context.Owner);
             CodeExpression expression = base.SerializeToExpression(manager, context.Owner);
             if ((name != null) && (expression != null))
             {
                 RootContext context2 = manager.Context[typeof(RootContext)] as RootContext;
                 if ((context2 != null) && (context2.Value == context.Owner))
                 {
                     name = "$this";
                 }
                 base.SerializeToResourceExpression(manager, value, false);
                 if (this.EmitApplyMethod(manager, context.Owner))
                 {
                     ResourceManager manager2 = manager.Context[typeof(ResourceManager)] as ResourceManager;
                     CodeMethodReferenceExpression expression3 = new CodeMethodReferenceExpression(base.GetExpression(manager, manager2), "ApplyResources");
                     CodeMethodInvokeExpression expression4 = new CodeMethodInvokeExpression {
                         Method = expression3
                     };
                     expression4.Parameters.Add(expression);
                     expression4.Parameters.Add(new CodePrimitiveExpression(name));
                     statements.Add(expression4);
                 }
                 return null;
             }
         }
     }
     if (flag2)
     {
         return this._currentSerializer.Serialize(manager, value);
     }
     return base.SerializeToResourceExpression(manager, value);
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:57,代码来源:LocalizationCodeDomSerializer.cs


示例9: Constructor0_Deny_Unrestricted

		public void Constructor0_Deny_Unrestricted ()
		{
			CodeMethodReferenceExpression cmre = new CodeMethodReferenceExpression ();
			Assert.AreEqual (String.Empty, cmre.MethodName, "MethodName");
			cmre.MethodName = "mono";
			Assert.IsNull (cmre.TargetObject, "TargetObject");
			cmre.TargetObject = new CodeExpression ();
			Assert.AreEqual (0, cmre.TypeArguments.Count, "TypeArguments");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:9,代码来源:CodeMethodReferenceExpressionCas.cs


示例10: Constructor1_Deny_Unrestricted

		public void Constructor1_Deny_Unrestricted ()
		{
			CodeExpression target = new CodeExpression ();
			CodeMethodReferenceExpression cmre = new CodeMethodReferenceExpression (target, "mono");
			Assert.AreEqual ("mono", cmre.MethodName, "MethodName");
			cmre.MethodName = String.Empty;
			Assert.AreSame (target, cmre.TargetObject, "TargetObject");
			cmre.TargetObject = new CodeExpression ();
			Assert.AreEqual (0, cmre.TypeArguments.Count, "TypeArguments");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:10,代码来源:CodeMethodReferenceExpressionCas.cs


示例11: Clone

 public static CodeMethodReferenceExpression Clone(this CodeMethodReferenceExpression expression)
 {
     if (expression == null) return null;
     CodeMethodReferenceExpression e = new CodeMethodReferenceExpression();
     e.MethodName = expression.MethodName;
     e.TargetObject = expression.TargetObject.Clone();
     e.TypeArguments.AddRange(expression.TypeArguments.Clone());
     e.UserData.AddRange(expression.UserData);
     return e;
 }
开发者ID:svejdo1,项目名称:CodeDomExtensions,代码行数:10,代码来源:CodeMethodReferenceExpressionExtensions.cs


示例12: TypescriptMethodReferenceExpression

 public TypescriptMethodReferenceExpression(
     IExpressionFactory expressionFactory,
     CodeMethodReferenceExpression codeExpression, 
     CodeGeneratorOptions options)
 {
     _expressionFactory = expressionFactory;
     _codeExpression = codeExpression;
     _options = options;
     System.Diagnostics.Debug.WriteLine("TypescriptMethodReferenceExpression Created");
 }
开发者ID:s2quake,项目名称:TypescriptCodeDom,代码行数:10,代码来源:TypescriptMethodReferenceExpression.cs


示例13: CloneMethodReference

 private static CodeMethodReferenceExpression CloneMethodReference(CodeMethodReferenceExpression oldReference)
 {
     CodeMethodReferenceExpression result = new CodeMethodReferenceExpression {
         MethodName = oldReference.MethodName,
         TargetObject = RuleExpressionWalker.Clone(oldReference.TargetObject)
     };
     foreach (CodeTypeReference reference in oldReference.TypeArguments)
     {
         result.TypeArguments.Add(TypeReferenceExpression.CloneType(reference));
     }
     ConditionHelper.CloneUserData(oldReference, result);
     return result;
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:13,代码来源:MethodInvokeExpression.cs


示例14: GenerateExceptionStatement

        private CodeThrowExceptionStatement GenerateExceptionStatement(GenerateErrorActivity activity)
        {
            var parameters = DefaultActivityBuilder.GenerateParameters(new List<string> {
                @"""Message : {0}\nMessage code : {1} """
            }, activity);

            CodeMethodInvokeExpression stringFormatCall = new CodeMethodInvokeExpression();
            stringFormatCall.Parameters.AddRange(parameters);

            CodeMethodReferenceExpression formatMethod = new CodeMethodReferenceExpression();
            formatMethod.MethodName = "Format";
            CodeVariableReferenceExpression stringObject = new CodeVariableReferenceExpression();
            stringObject.VariableName = "String";
            formatMethod.TargetObject = stringObject;
            stringFormatCall.Method = formatMethod;
            CodeThrowExceptionStatement throwException = new CodeThrowExceptionStatement(new CodeObjectCreateExpression(new CodeTypeReference(typeof(System.Exception)), stringFormatCall));
            return throwException;
        }
开发者ID:swoog,项目名称:EaiConverter,代码行数:18,代码来源:GenerateErrorActivityBuilder.cs


示例15: Constructor1

		public void Constructor1 ()
		{
			CodeMethodReferenceExpression method1 = new CodeMethodReferenceExpression ();
			CodeExpression param1 = new CodeExpression ();
			CodeExpression param2 = new CodeExpression ();

			CodeMethodInvokeExpression cmie = new CodeMethodInvokeExpression (
				method1, param1, param2);
			Assert.IsNotNull (cmie.Method, "#1");
			Assert.AreSame (method1, cmie.Method, "#2");

			cmie.Method = null;
			Assert.IsNotNull (cmie.Method, "#3");
			Assert.AreEqual (string.Empty, cmie.Method.MethodName, "#4");
			Assert.IsNull (cmie.Method.TargetObject, "#5");
#if NET_2_0
			Assert.AreEqual (0, cmie.Method.TypeArguments.Count, "#6");
#endif

			CodeMethodReferenceExpression method2 = new CodeMethodReferenceExpression ();
			cmie.Method = method2;
			Assert.IsNotNull (cmie.Method, "#7");
			Assert.AreSame (method2, cmie.Method, "#8");

			Assert.IsNotNull (cmie.Parameters, "#9");
			Assert.AreEqual (2, cmie.Parameters.Count, "#10");
			Assert.AreEqual (0, cmie.Parameters.IndexOf (param1), "#11");
			Assert.AreEqual (1, cmie.Parameters.IndexOf (param2), "#12");

			cmie = new CodeMethodInvokeExpression ((CodeMethodReferenceExpression) null, 
				param2);
			Assert.IsNotNull (cmie.Method, "#13");
			Assert.AreEqual (string.Empty, cmie.Method.MethodName, "#14");
			Assert.IsNull (cmie.Method.TargetObject, "#15");
#if NET_2_0
			Assert.AreEqual (0, cmie.Method.TypeArguments.Count, "#16");
#endif

			Assert.IsNotNull (cmie.Parameters, "#17");
			Assert.AreEqual (1, cmie.Parameters.Count, "#18");
			Assert.AreEqual (0, cmie.Parameters.IndexOf (param2), "#19");
		}
开发者ID:nlhepler,项目名称:mono,代码行数:42,代码来源:CodeMethodInvokeExpressionTest.cs


示例16: Serialize

 public override object Serialize(IDesignerSerializationManager manager, object value)
 {
     object obj2 = null;
     StringDictionary dictionary = value as StringDictionary;
     if (dictionary == null)
     {
         return obj2;
     }
     object current = manager.Context.Current;
     ExpressionContext context = current as ExpressionContext;
     if ((context != null) && (context.Owner == value))
     {
         current = context.Expression;
     }
     CodePropertyReferenceExpression targetObject = current as CodePropertyReferenceExpression;
     if (targetObject == null)
     {
         return obj2;
     }
     object component = base.DeserializeExpression(manager, null, targetObject.TargetObject);
     if ((component == null) || (TypeDescriptor.GetProperties(component)[targetObject.PropertyName] == null))
     {
         return obj2;
     }
     CodeStatementCollection statements = new CodeStatementCollection();
     CodeMethodReferenceExpression expression2 = new CodeMethodReferenceExpression(targetObject, "Add");
     foreach (DictionaryEntry entry in dictionary)
     {
         CodeExpression expression3 = base.SerializeToExpression(manager, entry.Key);
         CodeExpression expression4 = base.SerializeToExpression(manager, entry.Value);
         if ((expression3 != null) && (expression4 != null))
         {
             CodeMethodInvokeExpression expression5 = new CodeMethodInvokeExpression {
                 Method = expression2
             };
             expression5.Parameters.Add(expression3);
             expression5.Parameters.Add(expression4);
             statements.Add(expression5);
         }
     }
     return statements;
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:42,代码来源:StringDictionaryCodeDomSerializer.cs


示例17: GenerateLoggerCodeInvocation

        private CodeMethodInvokeExpression GenerateLoggerCodeInvocation(WriteToLogActivity activity)
        {
            var parameters = DefaultActivityBuilder.GenerateParameters(new List<string> {
                @"""Message : {0}\nMessage code : {1} """
            }, activity);

            CodeMethodInvokeExpression stringFormatCall = new CodeMethodInvokeExpression();
            stringFormatCall.Parameters.AddRange(parameters);

            CodeMethodReferenceExpression formatMethod = new CodeMethodReferenceExpression();
            formatMethod.MethodName = "Format";
            CodeVariableReferenceExpression stringObject = new CodeVariableReferenceExpression();
            stringObject.VariableName = "String";
            formatMethod.TargetObject = stringObject;
            stringFormatCall.Method = formatMethod;

            var loggerReference = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), VariableHelper.ToVariableName("logger"));
            var methodInvocation = new CodeMethodInvokeExpression(loggerReference, activity.Role, stringFormatCall);
            return methodInvocation;
        }
开发者ID:swoog,项目名称:EaiConverter,代码行数:20,代码来源:WriteToLogActivityBuilder.cs


示例18: Constructor1

		public void Constructor1 ()
		{
			CodeExpression expression = new CodeExpression ();
			string methodName = "mono";

			CodeMethodReferenceExpression cmre = new CodeMethodReferenceExpression (
				expression, methodName);
			Assert.IsNotNull (cmre.MethodName, "#1");
			Assert.AreSame (methodName, cmre.MethodName, "#2");
			Assert.IsNotNull (cmre.TargetObject, "#3");
			Assert.AreSame (expression, cmre.TargetObject, "#4");

			Assert.IsNotNull (cmre.TypeArguments, "#5");
			Assert.AreEqual (0, cmre.TypeArguments.Count, "#6");

			cmre = new CodeMethodReferenceExpression ((CodeExpression) null,
				(string) null);
			Assert.IsNotNull (cmre.MethodName, "#7");
			Assert.AreEqual (string.Empty, cmre.MethodName, "#8");
			Assert.IsNull (cmre.TargetObject, "#9");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:21,代码来源:CodeMethodReferenceExpressionTest.cs


示例19: AddEventHandler

        public override bool AddEventHandler(EventDescription eventDescription, string objectName, string methodName)
        {
            const string Init = "__init__";
            //This is not the most optimal solution for WPF since we will call FindLogicalNode for each event handler,
            //but it simplifies the code generation for now.

            CodeDomDocDataAdapter adapter = GetDocDataAdapterForPyFile();

            //Find the __init__ method
            CodeMemberMethod method = null;
            foreach(CodeTypeMember ctMember in adapter.TypeDeclaration.Members)
            {
                if (ctMember is CodeConstructor)
                {
                    if (ctMember.Name == Init)
                    {
                        method = ctMember as CodeMemberMethod;
                        break;
                    }
                }
            }
            if (method == null)
            {
                method = new CodeConstructor();
                method.Name = Init;
            }

            //Create a code statement which looks like: LogicalTreeHelper.FindLogicalNode(self.Root, "button1").Click += self.button1_Click
            CodeTypeReferenceExpression logicalTreeHelper = new CodeTypeReferenceExpression("LogicalTreeHelper");
            CodeMethodReferenceExpression findLogicalNodeMethod = new CodeMethodReferenceExpression(logicalTreeHelper, "FindLogicalNode");
            CodeFieldReferenceExpression selfWindow = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "Root");
            CodeMethodInvokeExpression findLogicalNodeInvoke = new CodeMethodInvokeExpression( findLogicalNodeMethod, selfWindow, new CodeSnippetExpression("\'" + objectName + "\'"));
            CodeDelegateCreateExpression createDelegateExpression = new CodeDelegateCreateExpression(new CodeTypeReference("System.EventHandler"), new CodeThisReferenceExpression(), methodName);
            CodeAttachEventStatement attachEvent = new CodeAttachEventStatement(findLogicalNodeInvoke, eventDescription.Name, createDelegateExpression);
            method.Statements.Add(attachEvent);
            adapter.Generate();
            return true;
        }
开发者ID:smartmobili,项目名称:parsing,代码行数:38,代码来源:PythonEventBindingProvider.cs


示例20: AddStatementsToFrameworkInitialize

		protected override void AddStatementsToFrameworkInitialize (CodeMemberMethod method)
		{
			string responseEncoding = pageParser.ResponseEncoding;
			if (responseEncoding != null)
				method.Statements.Add (CreatePropertyAssign ("ResponseEncoding", responseEncoding));
			
			int codepage = pageParser.CodePage;
			if (codepage != -1)
				method.Statements.Add (CreatePropertyAssign ("CodePage", codepage));

			string contentType = pageParser.ContentType;
			if (contentType != null)
				method.Statements.Add (CreatePropertyAssign ("ContentType", contentType));

			if (pageParser.OutputCache) {
				CodeMethodReferenceExpression init = new CodeMethodReferenceExpression (null,
						"InitOutputCache");
				CodeMethodInvokeExpression invoke = new CodeMethodInvokeExpression (init,
						OutputCacheParams ());
				method.Statements.Add (invoke);
			}
			
			int lcid = pageParser.LCID;
			if (lcid != -1)
				method.Statements.Add (CreatePropertyAssign ("LCID", lcid));

			string culture = pageParser.Culture;
			if (culture != null)
				method.Statements.Add (CreatePropertyAssign ("Culture", culture));

			culture = pageParser.UICulture;
			if (culture != null)
				method.Statements.Add (CreatePropertyAssign ("UICulture", culture));

			string errorPage = pageParser.ErrorPage;
			if (errorPage != null)
				method.Statements.Add (CreatePropertyAssign ("ErrorPage", errorPage));

                        if (pageParser.HaveTrace) {
                                CodeAssignStatement stmt = new CodeAssignStatement ();
                                stmt.Left = new CodePropertyReferenceExpression (thisRef, "TraceEnabled");
                                stmt.Right = new CodePrimitiveExpression (pageParser.Trace);
                                method.Statements.Add (stmt);
                        }

                        if (pageParser.TraceMode != TraceMode.Default) {
                                CodeAssignStatement stmt = new CodeAssignStatement ();
                                CodeTypeReferenceExpression tm = new CodeTypeReferenceExpression ("System.Web.TraceMode");
                                stmt.Left = new CodePropertyReferenceExpression (thisRef, "TraceModeValue");
                                stmt.Right = new CodeFieldReferenceExpression (tm, pageParser.TraceMode.ToString ());
                                method.Statements.Add (stmt);
                        }

                        if (pageParser.NotBuffer) {
                                CodeAssignStatement stmt = new CodeAssignStatement ();
                                stmt.Left = new CodePropertyReferenceExpression (thisRef, "Buffer");
                                stmt.Right = new CodePrimitiveExpression (false);
                                method.Statements.Add (stmt);
                        }

#if NET_1_1
			if (pageParser.ValidateRequest) {
				CodeMethodInvokeExpression expr = new CodeMethodInvokeExpression ();
                                CodePropertyReferenceExpression prop;
                                prop = new CodePropertyReferenceExpression (thisRef, "Request");
				expr.Method = new CodeMethodReferenceExpression (prop, "ValidateInput");
				method.Statements.Add (expr);
			}
#endif
                        
			base.AddStatementsToFrameworkInitialize (method);
		}
开发者ID:jjenki11,项目名称:blaze-chem-rendering,代码行数:72,代码来源:PageCompiler.cs



注:本文中的System.CodeDom.CodeMethodReferenceExpression类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# CodeDom.CodeMethodReturnStatement类代码示例发布时间:2022-05-26
下一篇:
C# CodeDom.CodeMethodInvokeExpression类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap