CodeMemberMethod GetMemberMethod()
{
CodeMemberMethod method = new CodeMemberMethod();
// void context_AfterDeserialization(object __sender, EventArgs __args)
// {
method.Name = EventHandlerName;
method.Parameters.Add(new CodeParameterDeclarationExpression(typeof(object), "__sender"));
method.Parameters.Add(new CodeParameterDeclarationExpression(typeof(EventArgs), "__args"));
// MigrationContext context = (MigrationContext)__sender;
method.Statements.Add(
new CodeVariableDeclarationStatement(
typeof(MigrationContext),
"context",
new CodeCastExpression(
typeof(MigrationContext),
new CodeArgumentReferenceExpression("__sender")
)
)
);
// AfterDeserializationEventArgs args = (AfterDeserializationEventArgs)__args;
method.Statements.Add(
new CodeVariableDeclarationStatement(
typeof(AfterDeserializationEventArgs),
"args",
new CodeCastExpression(
typeof(AfterDeserializationEventArgs),
new CodeArgumentReferenceExpression("__args")
)
)
);
method.Statements.Add(
new CodeSnippetStatement(_code)
);
// }
return method;
}