I built a console application and I\'m trying to test if my application works as expected.
I create an instance of the API class as shown in the code below but I receive an
change your method signature as follow
public static Dictionary<String, String> getQualWeight(String sqlConStr, String inBin, Label lblResults)
If you want to use an Object
and not have all the members be static you need to reference the non-static member variables using an instance of the class.
Change:
Test_api.getQualWeight(ConStr, bin_Num, lblResults);
To:
Test_api.getQualWeight(Test_api.ConStr, Test_api.bin_Num, Test_api.lblResults);
Because ConStr
, bin_Num
, and lblResults
are instance variables they must be references with an instance of the class - in this case Test_api
.
Alternately, you could move those values into a global, static, scope by changing their declarations from:
String ConStr = "SERVER=myservername; Database=mydb; UID=mylogin; PWD=mypassword;encrypt=no;enlist=false";
String bin_Num = "201284-11-000";
Label lblResults;
To this:
static String ConStr = "SERVER=myservername; Database=mydb; UID=mylogin; PWD=mypassword;encrypt=no;enlist=false";
static String bin_Num = "201284-11-000";
static Label lblResults;
public static Dictionary<String, String> getQualWeight
Put static keyword in the declaration of your method.
You must mark ConStr, bin_Num and lblResults as static.
static String ConStr = "SERVER=myservername; Database=mydb; UID=mylogin; PWD=mypassword;encrypt=no;enlist=false";
static String bin_Num = "201284-11-000";
static Label lblResults;
You have declared the members you're passing to the function call as instance variables, but you're trying to access them from the scope of the static Main
method. This is not possible, as the static Main
method has no access to the member variables.
Either declare them as static
too, or use Test_API.ConStr
for example as parameter to the method.