troubleshooting Question

How do constitute a parameter string for a stored procedure

Avatar of Olukayode Oluwole
Olukayode OluwoleFlag for Canada asked on
* StoredProcedureC#* dapper
2 Comments1 Solution14 ViewsLast Modified:
I have a c# application in which i need to read datat from a postgresql database
using Dapper.

I have my parameter field names from the stored procedure and the value
i want to pass in from the application. They are stated below:  I have tested the store procedure
with the parameter values and it worked


PARAMETER NAME   VALUE
locationidx                     "x"
locdescription                "x"
companycodex              "NAUTILUS"
idx                                 0
dowhatx                        "AR"

The Line calling the method from my c# application is shown below

 newList2 = NewDataAccess.ReadData<LocationModel>("public.splocationcode_getall", r);

The called method is shown below

[code]public static List<T> ReadData<T>(string sql, object p)
        {
            // var output = default(List<T>);   //This will return null in the case of an exception.
            var output = new List<T>();        // If you want to return an empty list instead, use this
            try
            {
                using (var conn = new NpgsqlConnection(LoginDetails.staticconnectionstring))
                {
                    output = conn.Query<T>(sql, p, commandType: CommandType.StoredProcedure).ToList();

                }

                //using (var conn = new NpgsqlConnection(LoginDetails.staticconnectionstring))
                //{
                //    output = conn.Query<T>(sql, new {locationidx = "x", locdescriptionx = "x", companycodex = "NAUTILUS",idx = 0,dowhatx = "AR" }, commandType: CommandType.StoredProcedure).ToList();

                //}

            }
       }[/code]

I need to get  parameter r constituted exactly as

locationidx = "x", locdescriptionx = "x", companycodex = "NAUTILUS",idx = 0,dowhatx = "AR"

with all quotation marks and commas in place .

If I the pass it into the method  as object p then my ReadData  would work correctly.

The portion of the method that is commented out shows a manually  constituted  r
parameter  that worked.

The problem i have is  how to constitute  the r parameter   from my c# application given that i know all the parameter names and their values as stated above.

I will be grateful for any assistance

Olukay



ASKER CERTIFIED SOLUTION
Dustin Saunders
Co-Founder and Chief Architect

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Top Expert 2016

The Distinguished Expert awards are presented to the top veteran and rookie experts to earn the most points in the top 50 topics.

Log in to continue reading
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform for $9.99/mo
View membership options
Unlock 1 Answer and 2 Comments.
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
See how we're fighting big data
The Value of Experts Exchange in My Daily IT Life

Experts Exchange (EE) has become my company's go-to resource to get answers. I've used EE to make decisions, solve problems and even save customers. OutagesIO has been a challenging project and... Keep reading >>

Mike

Owner of Outages.IO
Phoenix, Arizona, United States
Member Since 2016
Join a full scale community that combines the best parts of other tools into one platform.
Unlock 1 Answer and 2 Comments.
View membership options
“All of life is about relationships, and EE has made a virtual community a real community. It lifts everyone's boat.”
William Peck

Member since 2004