I\'m getting the error use of unassigned variable \"ps\" when declaring if paymentstatus is null or has value in the \"if\" statement. I\'m thinking that i allready declared ps
Yes, you did declare the variable.
Yet it says "unassigned" not "undeclared", and you didn't assign any value to the variable. Just set it to null.
You haven't initialized ps
...you need to initalize it with at least null
value...
PaymentStatus? ps = null;
The same applies to all other variables
It is an unassigned variable i.e. you havent initialised it with a value.
Initialize your ps
variable like
PaymentStatus? ps = null; //or something.
From Compiler Error CS0165
C# compiler does not allow the use of uninitialized variables. If the compiler detects the use of a variable that might not have been initialized, it generates compiler error CS0165
You have declared the local variable but you have not assigned a value. Therefore the compiler helps you to prevent this bug.
PaymentStatus? ps;
// ...
if (ps.HasValue)
So assign a value:
PaymentStatus? ps = null;
// ...
if (ps.HasValue)
However, thix fixes the compiler error but is still pointless since it will never have a value. Maybe you want to use a method parameter instead:
public IList<BestsellersReportLine> DailyBestsellersReport(PaymentStatus? ps)
{