コード例 #1
0
ファイル: Helper.cs プロジェクト: Missouri-BMI/popmednet
        /// <summary>
        /// Creates a QueryComposerModelProcessor for PCORI model.
        /// </summary>
        /// <param name="connectionString">The connection string of the pcori database.</param>
        /// <returns></returns>
        public static Lpp.Dns.DataMart.Model.QueryComposerModelProcessor CreateQueryComposerModelProcessorForPCORI(string connectionString)
        {
            var connectionStringBuilder = new System.Data.SqlClient.SqlConnectionStringBuilder(connectionString);

            var processor = new Lpp.Dns.DataMart.Model.QueryComposerModelProcessor();

            processor.Settings = new Dictionary <string, object> {
                { "ModelID", new Guid("85EE982E-F017-4BC4-9ACD-EE6EE55D2446") },
                { "Server", connectionStringBuilder.DataSource },
                { "UserID", connectionStringBuilder.UserID },
                { "Password", connectionStringBuilder.Password },
                { "Database", connectionStringBuilder.InitialCatalog },
                { "DataProvider", Lpp.Dns.DataMart.Model.Settings.SQLProvider.SQLServer.ToString() }
            };

            return(processor);
        }
コード例 #2
0
        public void QueryComposer1()
        {
            var processor = new Lpp.Dns.DataMart.Model.QueryComposerModelProcessor();

            processor.Settings = new Dictionary <string, object> {
                { "ModelID", new Guid("7C69584A-5602-4FC0-9F3F-A27F329B1113") },
                { "Server", "localhost" },
                { "UserID", "esp_mdphnet" },
                { "Password", "esp_mdphnet" },
                { "Database", "esp" },
                { "DataProvider", "PostgreSQL" },
                { "ConnectionTimeout", "240" },
                { "CommandTimeout", "0" }
            };

            byte[] requestDocumentContent = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(Create_ESP_1_WithExclusion()));

            System.IO.File.WriteAllBytes("request.json", requestDocumentContent);

            IDictionary <string, string> properties;

            Document[] documents;

            processor.Request("1",
                              new NetworkConnectionMetadata
            {
                OrganizationName = "Test Org",
                UserEmail        = "*****@*****.**",
                UserFullName     = "Administrator",
                UserLogin        = "******"
            },
                              new RequestMetadata
            {
                DataMartId               = "dm1",
                DataMartName             = "Test DataMart",
                DataMartOrganizationId   = "1",
                DataMartOrganizationName = "Test Org",
                IsMetadataRequest        = false,
                RequestTypeId            = ""
            },
                              new Document[] {
                new Document("1", "text/json", "request.json")
                {
                    IsViewable = false, Size = requestDocumentContent.Length
                }
            },
                              out properties,
                              out documents);

            using (var ms = new System.IO.MemoryStream(requestDocumentContent))
            {
                processor.RequestDocument("1", "1", ms);
            }

            processor.Start("1");

            Document[] responseDocuments = processor.Response("1");

            System.IO.Stream responseStream = null;
            try{
                processor.ResponseDocument("1", "", out responseStream, int.MaxValue);

                string json;
                using (System.IO.StreamReader reader = new System.IO.StreamReader(responseStream))
                {
                    json = reader.ReadToEnd();
                }
                System.IO.File.WriteAllText("response.json", json, System.Text.Encoding.UTF8);

                Console.WriteLine(json);
            }
            finally
            {
                if (responseStream != null)
                {
                    responseStream.Dispose();
                }
            }
        }