Saving data to SQL from unmanaged C++ using XML/webservice

I have a Webservice written in C# that provides data to both a web browser 
through and to a VC++ client.  I have been able to retrieve data 
from SQLServer and passing to my unmanaged C++ client as XML without a 
problem using the SqlDataAdaptor and the DataSet.  I am a bit confused how 
to construct the XML to pass to the Webservice to save data to SQL Server 
from my VC++ unmanaged client.

the client VC++ code:

HRESULT CStaffAccess::Save(CStff* pStaff)
    CString strXML CreateXML(pStaff);

    BSTR bstrXMLString = strXML.AllocSysString();
    BSTR bstrResult;

    STMWebService::CSTMWebService webService;
    return  webService.SaveStaff(bstrXMLString, &strResult);

I am using the XMLReader in the C# webservice to create the Dataset.

Below is the C# code for the Webservice:

    public Boolean SaveStaff(string sStaffXML)
        XmlReaderSettings settings = new XmlReaderSettings();
        settings.ConformanceLevel = ConformanceLevel.Fragment;
        settings.IgnoreWhitespace = true;
        settings.IgnoreComments = true;
        XmlReader reader = XmlReader.Create(sStaffXML, settings);

        // Create a new DataSet.
        DataSet staffDataSet = new DataSet("Staff DataSet");

        // Read the XML document into the DataSet.

        // Close the XmlTextReader

        SqlDataAdapter dataAdapter;

        SqlConnection conn;
        conn = new SqlConnection("Server 

        string cmdString = "SELECT * FROM Staff";  // NOT SURE IF I NEED 

        dataAdapter = new SqlDataAdapter(cmdString, conn);


         return true;

How do I build the XML string so that I can pass it into the DataReader and 
then let .NET do its magic.  Do I need to use an XSD file?  Can I just 
emulate the XML that .NET passes to the client when it calls a data 
retrieval method that returns XML with Staff records in it?

Are there any good articles about how to do this.  Most of the stuff out 
there about using web services use examples of retrieving data, not saving 



1/16/2007 6:41:21 PM
vc.mfc 33608 articles. 0 followers. Follow

0 Replies

Similar Articles

[PageSpeed] 49


Similar Artilces:

How to get TASK_ID field for summary tasks without using Project.a
I know for tasks which are not summary tasks we can get TASK_ID field using statusing web service. But i could nto find any other options than Project web service to get TASK_ID field for summary tasks and the top level project task. Problem of using Project web service is that in my custom sharedpoint web part where we are using PSI web services we get all the data required using Resource and Statusing web service for the logged in resource. But Statusing web service retrieves TASK_ID only for actual tasks and not for summary tasks. Now just to get TASK_ID of summary tas...

when i save a file that i have worked on, excel7 closes down work.
i have recently purchased office pro 2007. Excel 2007, when i save a filethat i have worked on, excel closes down and work is lost, done all updates, re installed from disc, please help i have lost 2 hours of work this moring that i need for a report a few questions: 1. what happens with save as? 2. what happens in safe mode? (hold shift key while starting excel) 3. do you have add-ins? 4. what operating system? x64? -- Gary Keramidas Excel 2003 "rob" <> wrote in message news:0483F09B-3289-42B4-8849-0C0A61380B11@mic...

Reformat data to vertical format
Here is what I am trying to do. I have about a thousand records that I need in a vertical format with normal shared field name. Any suggestions -- Psydwaz ----------------------------------------------------------------------- Psydwaze's Profile: View this thread: see Creating a Spreadsheet from Database data (#dbdata)

Just saved file, cannot be found. ?
Even Global search ? Win 7 ... Whatz up? if you saved it, it should be in the mru list? what version of excel are you using? -- Gary Keramidas Excel 2003 "Boswell" <> wrote in message > Even Global search ? > > Win 7 ... > > Whatz up? one other question, how did you open it, outlook email? if that's the case, search will never find it. it is probably here: C:\Users\Your user name\AppData\Local\Microsoft\Windows\Temporary Intern...

Permissions is not allowing me to use my print preview.
Help! Don't understand My Permission in Excel. Even though I unrestrict, it still doesn't allow me to Preview my documents. How do I reset? Please Help, ...

Developing a robust database at one co. then using it at another c
Are there any legal implications of using the type of database listed above to perform similar functions for another company? The 2 company's are in 2 totally different industries and the new database will have to be modified to fit the requirements for the industry it is in. The database was developed at the old company. there is no such thing as a robust Jet database. Move to SQL Server if you want to build a solution that will work for the next decade. Jet is and always has been depecrated On Apr 7, 12:14=A0pm, BoaMan10 <> w...

Project desktop expert, new to Project Server 2007 and working with a sandbox implementation currently. When I use the PWA Build Team...Replace to replace a generic resource on a project with an actual named resource after first publishing a plan, my updates don't appear to be reflected in Project Server. If I check out and open the Project Plan in MSP Pro, however, the updates were made, and then if I publish the schedule, the updates appear in server. I thought when you made resource updates using PWA that they should be reflected immediately (or as soon as the request...

Line Graph with two different data points
Hello, I am trying to create a line chart with numbers from my product Vs a competitor. The problem i am having is how can i make a chart that will have four data points comparing to each other? For example Product A- 1.5 1.2 1.6 1.8 Product B- 2.0 1.1 1.2 1.3 Product A- 70% 20 % 30% 67% Product B- 65% 30% 65% 55% How do i get all of these numbers on one chart? Is a line chart correct. I want to see these numbers compared?? Thank you so much Hi, Since the number don't appear related to the percentages you might plot them on the same chart but two different axes. If they were relate...

Question on multiple NICs used by Exchange 2003
I have a requirement to bind four virtual SMTP servers to unique IP addresses. The server has four NICs and each IP address is uniquely bound to a virtual SMTP server. I used telnet to confirm that the appropriate virtual SMTP server responds to each assigned IP address. In case you are wondering why I did not use virtual IP addresses- Per Microsoft, the virtual IP address schema will not satisfy our requirement that the same IP address be used for sending (relaying) the e-mail that received it. Their recommendation was to have a NIC for each virtual SMTP server. The problem that I am ex...

How to search against XML files in the file system?
Putting the search textbox on the page is the easy part. What's preferred way to find terms in XML files located on the file system? Like finding stuff saved in XML files some of the blogs use these days to store their blog items? There can be lots and lots and lots of XML files on the file system to search. -- <%= Clinton Gallagher NET csgallagher AT URL clintonG wrote: > Putting the search textbox on the page is the easy part. What's preferred > way to find terms in XML files located ...

Any way to load VB persistence in C++?
I've re-written an old VB6 ActiveX control in C++ as a COleControl, duplicated all its properties and functionality, and taken over its old CLSID and ProgID. Now I'm looking for a way to load the old persisted properties in the new C++ control. Our container supports an ASCII persistence mode which implements IPropertyBag. In this mode, the properties that the VB control wrote out via PropertyBag.WriteProperties map right in to my new control's DoPropExchange PX_blah methods. In binary mode though, when CreateControl( ) winds its way down to my DoPropExchange, all the PX_blah me...

Data changes when Analyzed with Excel
I have a query with 3 tables that represent master item list, count qty and as qty. When I look at the results in Query, all is well and accurate yet when I select Analyze with Excel, values change. For example, if a record shows zero qty in the as of field and zero quantity in the count field, I get a value in one or both of the fields that origianlly were zero. Other than linking the tables and grouping by master item list (to show all parts regardless of qty's), there are no formulas or expressions in this query. One of the tables is linked to a FoxPro table via ODBC driver. ...

How to use AjaxToolKit in for DHTML Editor
Dear Sir/Madam Please tell me how to use AjaxToolKit dll for DHTML purpose using C#. Thanks in Advance "Deep" <> wrote in message > Please tell me how to use AjaxToolKit dll for DHTML purpose using C#. ...

Appending XML to an existing XML file
Hey all, I've read a few articles about speed and XML processing - so I just want to make sure that I'm using the right strategy for what I want to achieve. I have an XML file that I'm appending to every time a user submits their information. Right now I'm using XMLDocument (Load and Save) in conjuncture with XmlElement objects. Is this the right approach or is there a faster approach? Thanks, Novice PS Here is a simplified version of what I'm doing: XmlDocument xdoc = new XmlDocument(); xdoc.Load("results.xml"); XmlNode node = xdoc.SelectSingleNode("...

Using the classes created with xsd.exe
I have created classes from several xsd files. These files create about 150 classes and spot checking them they do represent types in the xsd files. the question is how do I use these files. How do I load data into them and create xml from them. Is there some articles about this subject. Thank you, -- Jerry Hi Jerry, As for the classes you've generated, are they normal classes or dataset classes? As for the normal classes you generated through xsd.exe, you can use XML serialization to convert those class instances into XML content or deserialize the XML content back into objec...

Sorting Data Automatically
I am importing text into a new worksheet and would like to run a macro that can perform labour a labour intensive sort/deletion. Column A contains a mixture of text strings as follows: QR4567 QR4567/QT1223 QR4290 QR4290/QT1224 What I would like to do is determine how many QR's have associated QT's and how many QR's are remaining that dont have associated QT's. Any assistance would be greatly appreciated. Alan Bartley Sydney Australia Hi Alan not sure how the sorting comes into this - sounds more like needing a formula to count when a cell contains both QR & QT as op...

How should I debug or adobt better data processing for high speed
Hello! I have a program in MFC that collects data via USB, process it and display graphs. When data rate is relatively low(max. 1K bytes/Sec) the program works Ok but when data speed exceeds 10K bytes/Sec program goes crazy after a while and shows fictionally data . There is no problem for display section because it is buffered ( I have a buffered DC). The problem seems to be data processing. Because program is huge I can't post codes and I do not expect a solution but I try to explain general data processing scheme and I hope someone can advise me how to find weak points of progr...

Access violation in CDaoQueryDef::Open or CSimpleStringT::GetLength(). VC++ 6.0 app compiled in Visual C++ .NET
Hi, I have a problem using DAO in Visual C++ .net Standard edition. We have an old project created in Visual C++ 6.0 Professional. The projects compiles, links ok (with a lot of warnings telling the DAO-classes are deprecated). The compiled program executes ok until I am about to access the database. Some accesses goes ok, but some are not. It is always the same databse accesses that the program crashes on. The database that I'm using is Access 97. I also have tried converting it to 2000 and 2002. In this function the crash occurs in daocore.cpp: void CDaoQueryDef::Open(LPCTSTR lpszName...

Problems with DATE data type
Hi!!! I've got a little problem with the next macro in Excel. The problem is that I must look for some information in a data bas using as filter a specific day an hour in the year. I get the date and the hour using a form and then the macro calle "Busqueda" receives the value. I've programmed the macro using MSQuery just to see the necessary cod and the problem has appeared when I've tried to include the para called "Dia" in the SQL code. I've tried using " & Dia & " but it doesn't work and I don't know ho to include my param...

Reminders coming back after offline use
I have a user who uses Outlook on his laptop, but when he is out of the office he accesses mail through OWA. Every time he comes back in the office he says he gets inundated with old reminders popping up. And when you click on "Dismiss" you get an error that says, "conflicting edits have been made to the same item..." and there are duplicates of the event. I looked at this today and noticed that there is an event with the original date and the duplicate was showing a last-edited date of last Thursday. I asked if anything unusual happened last Thursday and he said he pro...

Paging Size set up for sql 2005 best performance
erver windows 2003 sp1. 64 bits, Paging file size for selected drive C is (custom selected) Initial 2046 MB, and maximum 4092 MB. It is currently allocated 4081 MB. Computer RAM memory is 8GB. Server functions as a database MS SQL 2005 server, and it is used under heavy insert database operations The problem is that it can be seen on windows task manager there is on PF usage and Page File Usage hHstory around 8.2 GB paging file size not 4081 GB as it is given on virtual memory page set up. DoleBludger ( writes: > erver windows 200...

How to merge columns and rows into one cell besides using Merge and Center Icon?
I had posted this question before, but I couldn�t find this thread in any of the pages up till page 17. So I�m posting again. I want to merge all rows and columns starting from A1 to J2, with no lines in between into one cell. My text data value are in D1 and D2 respectively. Using Merge and Center Icon will only retain the upper-left most data, resulting the data in D2 to be deleted. So how to merge all rows and columns into one cell and yet prevent the data in D2 to be deleted? Any help will be greatly appreciated. ------------------------------------------------ ~~ Message posted from h...

XML: pros and cons ?
Hello everyone, I'd like to know which are the main pros and cons of using XML implementation in business organizations. >From a technical perspective, I find XML powerful, but looks like it is being pushed more from technical people than from businessmen... So, some questions: 1. Pros and cons 2. Main and most trustable effective uses of XML in real industrial companies and corporates ? 3. Any indications on costs and ROI, TCO ? Thank you so much in advance ! Andrea wrote: > Hello everyone, > I'd like to know which are the main pros and cons of using XML > impleme...

Virus Outbreak by using SMTP virtual server
Hi, The client was accidentally open file then the nightmare began to spread out. It will use "system administrator" and "webmaster" as sender to inform the user that their password is grant or deny. Today, it tried to send out as NDR style. I assumed the virus on the workstation is using our smtp server. Will there a log that SMTP virtual server may generate so I can keep cross reference such as workstation or username so I can pinpoint? Any suggestion or recommendation will be appreciated. I am currently using Trend Micro Offican or Scan...

Using MFC dll from non-MFC application
I have been struggling several weeks with this problem. I need to call an MFC dll from a non-MFC application. The MFC dll was originally a working MFC program that I conveted to a dll. The dll works fine except that it crashes when I exit. Can anyone provide me with some snippets of working code showing how you did this? An example of the calling code, the CWinApp (or at least the InitInstance) and the hook function would be great. I have read several times that this should be easy to do, so I am probably just missing a simple line somewhere. The way I created my dll is to use to ...