System.Web.Compilation.TemplateControlCompiler.AddBindableTemplateInvocation C# (CSharp) Method

AddBindableTemplateInvocation() static private method

static private AddBindableTemplateInvocation ( ControlBuilder builder, string name, string methodName, string extractMethodName ) : void
builder System.Web.UI.ControlBuilder
name string
methodName string
extractMethodName string
return void
		void AddBindableTemplateInvocation (ControlBuilder builder, string name, string methodName, string extractMethodName)
		{
			CodePropertyReferenceExpression prop = new CodePropertyReferenceExpression (ctrlVar, name);

			CodeDelegateCreateExpression newBuild = new CodeDelegateCreateExpression (
				new CodeTypeReference (typeof (BuildTemplateMethod)), thisRef, methodName);

			CodeDelegateCreateExpression newExtract = new CodeDelegateCreateExpression (
				new CodeTypeReference (typeof (ExtractTemplateValuesMethod)), thisRef, extractMethodName);

			CodeObjectCreateExpression newCompiled = new CodeObjectCreateExpression (typeof (CompiledBindableTemplateBuilder));
			newCompiled.Parameters.Add (newBuild);
			newCompiled.Parameters.Add (newExtract);
			
			CodeAssignStatement assign = new CodeAssignStatement (prop, newCompiled);
			builder.Method.Statements.Add (AddLinePragma (assign, builder));
		}
		
TemplateControlCompiler