WCF / ASMX :: Dataset Table Order Returned By Web Service On Framework 4?
Jul 13, 2010
I have recently converted all my applications to framework 4.0 and am very happy as a whole.
I have, however, run into a bit of a bind: i have exposed quite a few web services that have methods returning datasets.
Clients immediately started complaining that the order of the tables within the returned datasets were different. I investigated and can confirm that the webmethods are indeed shuffling the tables within the datasets. The order of tables in the method result are markedly different from the table order in the code before being returned.
My question is: is it possible to hard code the order of tables within the dataset being returned by a webmethod? I know that clients should, ideally, be referencing the tables via the table names, but that is - unfortunately - not the case in the really real world.
View 1 Replies
Similar Messages:
May 12, 2010
I have a web service that returns an object that I attach to a gridview's datasource. is there a way to sort the data from the web service before attaching it to the datasource?
[Code]....
View 4 Replies
Jan 20, 2010
I'm having a confusing issue concerning web services, XmlDocument return type and XmlProcessingInstruction. I've basically got a web service that returns an XmlDocument containing a list of search results. In order to make it a little more user-friendly, I'd like the XmlDocument to include a Processing Instruction (<?xml-stylesheet type='text/xsl' href='book.xsl'?>) for the inclusion of an XSL stylesheet. Is there something in the ASP.NET pipeline that would prevent this? I'm using the following code (lifted from the MSDN documentation of the CreateProcessingInstruction() method) in a test WebMethod and it doesn't seem to include the processing instruction.
[Code]....
All I'm getting in the response is the following:
[Code]....
View 3 Replies
Jan 3, 2011
A sample web service app I have been practicing with has two web methods:
1) HelloWorld -- which I can read the data from no problem - just a string
2) ClientData[] -- which returns an array of struct objects -- this is where I have the question.
Here is my instantiation of the webservice in my winform app for reading from HelloWorld
myWebSvc1.WebService1 s1 = new myWebSvc1.WebService1();
string y = s1.HelloWorld(); //--no problems so far here
Console.WriteLine(y);
//--but when I add the call to GetClientData() I have a problem
List<ClientData> ls = new List<ClientData>(s1.GetClientData(3)); //--problem here
public struct ClientData
{
public String Name;
public int ID;
}
[WebMethod(CacheDuration = 30,
Description="Returns an array of Clients.")]
public ClientData[] GetClientData(int Number)
{
ClientData [] Clients = null;
if (Number > 0 && Number <= 10)
{
Clients = new ClientData[Number];
for (int i = 0; i < Number; i++)
{
Clients[i].Name = "Client " + i.ToString();
Clients[i].ID = i;
}
}
return Clients;
}
If I browse the .asmx file -- the sample xml returns the following if I enter 3 for GetClientData function param
<?xml version="1.0" encoding="utf-8" ?>
- <ArrayOfClientData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://codeproject.com/webservices/">
- <ClientData>
<Name>Client 0</Name>
<ID>0</ID>
</ClientData>
- <ClientData>
<Name>Client 1</Name>
<ID>1</ID>
</ClientData>
- <ClientData>
<Name>Client 2</Name>
<ID>2</ID>
</ClientData>
</ArrayOfClientData>
From my winform app I get the following error messages when trying to add the GetClientData function call above --
Error 1 The best overloaded method match for 'System.Collections.Generic.List<DSS_2008.Form7.ClientData[]>.List(System.Collections.Generic.IEnumerable<DSS_2008.Form7.ClientData[]>)' has some invalid arguments
Error 2 Argument '1': cannot convert from 'DSS_2008.myWebSvc1.ClientData[]' to 'System.Collections.Generic.IEnumerable<DSS_2008.Form7.ClientData[]>'
Error1 The best overloaded method match for 'System.Collections.Generic.List<DSS_2008.Form7.ClientData[]>.List(int)' has some invalid arguments
Error 2 Argument '1': cannot convert from 'DSS_2008.myWebSvc1.ClientData[]' to 'int'
How can I fix this so that I can read the result into my winform app?
//--sample web service
namespace MyService
{
using System;
using System.Collections;
using System.Data;
using System.Web;
using System.Web.Services;
public struct ClientData
{
public String Name;
public int ID;
}
/// <summary>
/// Summary description for WebService1.
/// </summary>
[WebService(Namespace="http://codeproject.com/webservices/",
Description="This is a demonstration WebService.")]
public class WebService1 : System.Web.Services.WebService
{
//--source of sample:
http://www.codeproject.com/KB/webservices/myservice.aspx
private const int CacheHelloWorldTime = 10; // seconds
public WebService1()
{
//CODEGEN: This call is required by the ASP+ Web Services Designer
InitializeComponent();
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
//WEB SERVICE EXAMPLE
//The HelloWorld() example service returns the string Hello World
//To build, uncomment the following lines then save and build the project
//To test, right-click the Web Service's .asmx file and select View in Browser
//
[WebMethod(CacheDuration = CacheHelloWorldTime,
Description="As simple as it gets - the ubiquitous Hello World.")]
public string HelloWorld()
{
return "Hello World bbb";
}
[WebMethod(CacheDuration = 30,
Description="Returns an array of Clients.")]
public ClientData[] GetClientData(int Number)
{
ClientData [] Clients = null;
if (Number > 0 && Number <= 10)
{
Clients = new ClientData[Number];
for (int i = 0; i < Number; i++)
{
Clients[i].Name = "Client " + i.ToString();
Clients[i].ID = i;
}
}
return Clients;
}
}
}
View 1 Replies
May 26, 2010
I want to develop a web service that handle another web service's event. (C#.Net 3.5 framework)
View 1 Replies
Apr 23, 2010
This may not be the correct place to put this as it is both a stored procedure AND Visual Studio 2008 problem.
I have the following stored procedure:
[Code]....
I have been mokeying around with it because of what is happening. I have a dataset, call it dataset1. I drag this stored procedure onto the dataset. I EXPECT a datatable to appear, instead the data set adds this store procedure to the queries table adapter and sets the exec mode to 'NonQuery' which unless I am very mistaken, means "don't expect a dataset back from this' when in fact you DO expect a dataset back from this.
The SQL server is a Windows 2000 Server running SQL 2000. It has never caused us a moments grief since we set it up oh-so-many years ago.
If I connect to a different database and drag a query into the same dataset I get a datatable as I expect. I cannot see where / how this procedure could be wrong. The query when executed returns exactly the data I expect, in the format I expect (looks like a table, acts like a table in the Query analyzer).
View 3 Replies
Sep 20, 2010
I have running existing web service in framework 2.0, but i want to convert all my service to framework 3.5 WCF Service..
View 1 Replies
Nov 18, 2010
I'm maintaining a legacy XML web service system (Framework 2.0), and is trying to return an XML fragment as part of a SOAP response. Problem is: SOAP will auto-enclose the XML fragment in <[CData[]]> tag, and I want to avoid this.
In short, SOAP Response gave me this:
<MessageContent xmlns=""><![CDATA[<DataSourceResponse>blah..blah..blah..</DataSourceResponse>]]></MessageContent>
But what I want in the SOAP response is this (without the CData enclosure):
<MessageContent xmlns=""><DataSourceResponse>blah..blah..blah..</DataSourceResponse></MessageContent>
View 5 Replies
Oct 28, 2010
I am trying to get attachment from the SAP XI Web Service which is returning the following soap response..
--SAP_db9e7598-e284-11df-9fcf-001125a6de68_END
View 1 Replies
Nov 26, 2010
I unable to debug web service as it require dataset as parameter. Im having web application calling to web method of remote web service. I debug my web application up to call for web method but I want to debug web service as well by sending dataset as parameter. How to debug web service in such case?
View 6 Replies
Oct 11, 2010
I am trying to call a web service which is hosted in .net framework.
Here is my piece of code:
<%
function ValidateUser()
set objSoapClient = server.CreateObject("MSSOAP.SoapClient30")
objSoapClient.ClientProperty("ServerHTTPRequest") = True
Call objSoapClient.mssoapinit("http://10.13.222.240:81/megaservice/UserWS.asmx?WSDL","UserWS")
ValidateUser=objSoapClient.IsUser(2)
End function
%>
And i call the function as
<%
=CalculateDiscount
%>
It is giving error as
Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
/asp/index.asp, line 12
800401f3
i am working on .net and new on asp.I haven't worked on asp and it was pretty easy to call through visual studio in .net but can't do the same for asp
View 3 Replies
Nov 4, 2010
We are upgrading .Net 2.0 Framework Web service project to .Net 3.5 Project. We are not changing any methods. Will there be any change in the proxy because of this Framework Upgrade.My requirement is to all the existing clients consuming this webservice should not have any impact due to this framework upgrade.
View 1 Replies
Jan 3, 2010
I using TreeView with ShowCheckBoxes="All" in an ASP.NET 3.5 web application and for some reason the checked nodes are not returned in order. Lets say I have nodes A,B,C and I select B and C and hit the save button and when I check the CheckedNodes property of the Treeview the checked nodes are in order (B,C). But the next time when I go back to the page and select the node A the order is being returned B,C,A. What could be the reason for this behavior?
View 1 Replies
Jul 29, 2010
This is happening only in my system. when i do a build it just works fine but when i try to debug the service i am getting the follwoing error. please let me konw what would be theissue.
Microsoft.Practices.RecipeFramework.ActionExecutionException: An exception occurred during the binding of reference or execution of recipe DebugWCFService. Error was: Action DebugWebProject failed to execute:
Value does not fall within the expected range..
You can remove the reference to this recipe through the Guidance Package Manager. ---> System.ArgumentException: Value does not fall within the expected range.
at EnvDTE.Properties.Item(Object index)
at Microsoft.Practices.RecipeFramework.Extensions.Actions.VisualStudio.DebugWebProjectAction.Execute()
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName, Dictionary`2 inputValues)
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName)
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionCoordinationService.Run(Dictionary`2 declaredActions, XmlElement coordinationData)
at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
--- End of inner exception stack trace ---
at Microsoft.Practices.RecipeFramework.Recipe.UndoExecutedActionsAndRethrow(Exception ex)
at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
at Microsoft.Practices.RecipeFramework.Recipe.Execute(Boolean allowSuspend)
at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(String recipe, IAssetReference reference, IDictionary arguments)
at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(IAssetReference reference)
at Microsoft.Practices.RecipeFramework.RecipeReference.OnExecute()
at Microsoft.Practices.RecipeFramework.AssetReference.Execute()
at Microsoft.Practices.RecipeFramework.VisualStudio.RecipeMenuCommand.OnExec()
at Microsoft.Practices.RecipeFramework.VisualStudio.AssetMenuCommand.Invoke()
View 1 Replies
Mar 31, 2011
In my project I work with Entity Framework (LINQ to ENTITY). I only have ADO.NET Entity Data Model and a DAL (Data Access Layer). I also get the data due a WCFClientService. I have a gridview that needed to be exported in Excel.
FlexCel is a tool for generating Excel files based on a template. The only thing I see in demo's is that they work with DataSets.
Is there a way to convert the data in my gridview to a virtual DataSet?
I've written the following method to get the data:
[Code]....
View 1 Replies
Feb 18, 2010
I've managed to connect to the database and return a record based upon a login name. I can itterate through the rows printing out the password but I know there's only 1 row (or can test for that) so how do I get the value of the password for the one row without the loop?
Dim supervisorAdapter As New SupervisorTableAdapters.SupervisorTableAdapter
Dim supervisors As Supervisor.SupervisorDataTable
supervisors = supervisorAdapter.GetSupervisorByLogin(login)
For Each count As Supervisor.SupervisorRow In supervisors
Response.Write(count.password)
Next
View 3 Replies
Apr 8, 2010
How to make this method return boolean value, depending on query return. False - nothing, True - data exists. Before i just returned int from uniqueQuote.Count() but does not look like great method.
private bool CheckEnquiryUser(int enquiryId, Guid userId)
{
int selectedEnquiryId = enquiryId;
[code]...
View 3 Replies
Feb 17, 2011
I want to run a SUM on a particular against the DataSet returned by a SqlDataSource. How can I access the DataSet stored in memory that is returned by the SqlDataSource to run this calculation?
View 2 Replies
Feb 26, 2010
I am having some difficulties with a particular task. I am creating a support desk intranet application and I am trying to write a method within a class within a namespace which will form a generic database connection which can be called from any of the aspx pages so that I have the dbconnection logic in one place; you know, going along with the 'DRY' (Don't Repeat Yourself) mantra.
The Namespace:
SUPPORTDESK.SQL.dbconnection.pullData()
Objective of the method:
To provide any aspx code behind file with an SQL Server 2005 Express Connection and if possible return the data from an SQL Query. This is where I need advice do I create the method such that it simply forms the connection and returns a DataSet or that it returns an SQLConnection object? If i've got things back to front and upside down don't worry I'm a beginner with ASP.NET. The Method so far:
[Code]....
If I'm on the right track how do I access the data returned in the DataSet?
View 3 Replies
Nov 19, 2010
using vb.net 2005 and crystal reports. in the vb.net code I am querying the database, processing the results and then binding to the crystal report.
What I need to do now in the code is this: I need to create a new page to display the results so that there is one page for each row in the dataset that I'm binding to the report.
View 1 Replies
Feb 19, 2010
I have the following code:
[Code]....
At the other end I am returning the following XML response:
[Code]....
I'm seeing my response.writes of A and B, so I know my data is making it to the other end and I'm getting a response back, but I can't seem to figure out how to read the response and redirect to the URL referenced in <URL>
View 1 Replies
Feb 9, 2011
I've created a webservice that returns and xml document:
[Code]....
Once I've got the xml loaded as a document, I can start looping through the content and do things with it but I'm really confused at the moment.
View 2 Replies
Apr 16, 2010
How to sort the dataset Values in Descending order , I have Followed the following way
decimal Length = 94;
decimal Width = 7;
decimal Height = 13;
DataTable dtCarton = new DataTable();
[Code]....
View 6 Replies
Feb 6, 2010
Difference between .net framework 2.0 and .net framework 2.0 with service pack 2
View 4 Replies
May 29, 2010
I need to check if any rows are returned in a QueryString here's what I have so far.not sure what code to put to see if the row count is greater than 1
private void BindDataToGrid()
{
//MessageBoardEntities3 is ThemeableAttribute connection string name
int TID = Convert.ToInt32(Request.QueryString["ThreadID"].ToString()); // if Post ID is int
var context = new MessageBoardEntities3();
gvPosts.DataSource = from p in context.Posts
where p.ThreadID == TID
select new { p.Post1, p.PostID };
gvPosts.DataBind();
lblNoPosts.Text = "No posts found for this thread.";
}
View 1 Replies