Link to home
Start Free TrialLog in
Avatar of Prysson
Prysson

asked on

Help with nullable variables and a webmethod

I have a web methods that is set up like so

public DataSet updateAppRecord(int app_id, string app_acro, string app_name, int? app_type_id, int control_level_id, bool active)

As you can see there is one variable that is "nullable" int?  

It has to be nullable because a value will not ALWAYS be passed though with this...sometimes it will be null

on the back end I call it like so

DataSet ds = almsvc.updateAppRecord(app_id.Value, app_acro, app_name, app_type_id.Value, ctl_level_id.Value, active.Value);

I ahve also tried it like so

DataSet ds = almsvc.updateAppRecord(app_id.Value, app_acro, app_name, app_type_id, ctl_level_id.Value, active.Value);

I have to beleive that the issue is occuring because of the int? for the app_type_id   app_type_id.Value would be the way you woudl normally cast an int? to an int variable....but if it is int? to int? my understanding is you dont need the.Value.     Why do I get a SOAP exception when I try to pass the int? variable to the web service when the web service is asking for an int? variable?



Avatar of Jaime Olivares
Jaime Olivares
Flag of Peru image

at your database design, is this variable declared as nullable? (Allow null)
Avatar of Toms Edison
int will be automatically converted into int? So that should not be the issue. I dont think DBNull will be converted into integer. Before calling the web method check if the value passed is DBNull
Avatar of Prysson
Prysson

ASKER

1. The database allow for null values in all columns.
2. a step through of the code during testing shows that no dbnull values are being passed into the web method.

Whats more..I removed all possibility of null in teh variables by using conversion methods converting null entries into "0" or "false" depending on the variable...so no null are being passed no nulls are being expected and nullas are allowed bythe database...still I am getting the error...I am totally confused now..I cant see any reason why this would be happening.

Avatar of Prysson

ASKER

Ok I have eliminated the interface and even the web service..the error is occuring in the BLL and DAL layers compiled into a dll.

A method that fills a datatble querying data from the database give a foreign key constraint error...Now this I totally dont understand.  I have revied the datatable and its data..none of the data violates foreign key constraints and the datatable allows nulls for all columns...unless thats it..is it a violation of a foreign key constraint to have a null value?
ASKER CERTIFIED SOLUTION
Avatar of Toms Edison
Toms Edison
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial