private static void RenderReport(EntityReference target, ParameterCollection parameters, string filename) { var secure = new Dictionary <string, dynamic>() { ["resource"] = "https://organization.crm.dynamics.com", ["username"] = "******", ["password"] = "******", }; var connectionString = $"AuthType=Office365; Username={secure["username"]}; Password={secure["password"]}; Url={secure["resource"]};"; var service = new CrmServiceClient(connectionString); var context = new FakePluginExecutionContext { InputParameters = parameters }; var provider = new FakePluginProvider { ExecutionContext = context, OrganizationService = service, Target = target }; var request = new Render(null, secure.ToJson()); request.OnExecute(provider); File.WriteAllBytes(filename, Convert.FromBase64String(provider.ExecutionContext.OutputParameters["Output"].ToString())); }
private static void RenderReport(EntityReference target, ParameterCollection parameters, string filename) { var serviceProvider = GetServiceProvider(); parameters.Add("Target", target); var context = new FakePluginExecutionContext { InputParameters = parameters, }; serviceProvider.AddService <IPluginExecutionContext>(context); var request = new Render(null, SecureConfig.ToJson()); request.Execute(serviceProvider); File.WriteAllBytes(filename, Convert.FromBase64String(context.OutputParameters["Output"].ToString())); }
private static void GetReportParameters(EntityReference report) { var serviceProvider = GetServiceProvider(); var context = new FakePluginExecutionContext { PrimaryEntityName = report.LogicalName, PrimaryEntityId = report.Id }; serviceProvider.AddService <IPluginExecutionContext>(context); var request = new Parameters(null, SecureConfig.ToJson()); request.Execute(serviceProvider); Console.WriteLine(context.OutputParameters["Parameters"]); }