Solved

Help with nullable variables and a webmethod

Posted on 2008-10-29
5
857 Views
Last Modified: 2008-11-07
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?



0
Comment
Question by:Prysson
  • 2
  • 2
5 Comments
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 22834053
at your database design, is this variable declared as nullable? (Allow null)
0
 
LVL 13

Expert Comment

by:TechTiger007
ID: 22834660
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
0
 

Author Comment

by:Prysson
ID: 22840069
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.

0
 

Author Comment

by:Prysson
ID: 22840880
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?
0
 
LVL 13

Accepted Solution

by:
TechTiger007 earned 500 total points
ID: 22842941
Foreign key does not allow null values, that should be the issue.
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now