请大家帮忙?

屌丝女士111 2009-06-03 11:42:43
我现在做的项目需要用到webService

但是我现在一点头绪都没有
请大家帮帮忙

是这样的
我的项目已经在服务器上,现在各地的商家需要从我这里部署的webService调出我的webService里面的数据

webService需要放我的两张表的信息,怎么样从我数据库内容调出放在我的webService里面,
然后商家可以从各地调出???


我该如何操作
??????


...全文
76 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yechd 2009-06-05
  • 打赏
  • 举报
回复
楼上关于如何编码实现提供了正解,我再补充2点:
1. 由于各地商家调用WebService的客户端程序开发语言不尽相同,所以WebService提供的方法的返回值最好都是字符串,如果要返回的是一个结果集或结构,建议组装成XML格式的字符串进行输出
2. 调用WebService的方式可以写成COM,以便各种语言可以通用
屌丝女士111 2009-06-05
  • 打赏
  • 举报
回复
谢谢大家的帮忙
我昨天弄出来了
屌丝女士111 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 whoami333 的回复:]
你的WebService不能访问你的数据库吗?
[/Quote]

现在我不知道如何操作
如何用代码实现??
请问有什么例子之类的么???
gui0605 2009-06-04
  • 打赏
  • 举报
回复
和开发一般的类差不多,不同的是webservice可以远程调用而已。
下面就是一个webservice的代码:

using System;
using System.Data;
using System.Text;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.ComponentModel;
using System.Web.Script.Services;
using ExchangSms.Common;
using ExchangSms.Entity;
using System.Collections.Generic;
using ExchangSms.Provider.SqlClient;
using ExchangSms.Provider.Factory;
namespace ExchangSms.WebSite.Admin.WebService
{
/// <summary>
/// DisplayOrder 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
[ScriptService]
public class ProductDisplayOrder : System.Web.Services.WebService
{
#region 产品排序
[WebMethod]
public int ProductOrder(ArrayList al)
{
for (int i = 1; i <= al.Count; i++)
{
ExchangProductEntity _pe = new ExchangProductEntity();
_pe.ID = Convert.ToInt32(al[i - 1]);
_pe.DisplayOrder = i;
DataFactory<ExchangProductSqlProvider>.CreateProvider.UpdateEntity(_pe);
}
return 0;
}
[WebMethod]
public string GetAllMarket()
{
StringBuilder sb = new StringBuilder();
ExchangMarketEntity _me = new ExchangMarketEntity();
SqlQuery sql = new SqlQuery();
sql.TableName = _me.TableName;
sql.SqlReturnField = _me[0, ExchangMarketEnum.ID] + "," + _me[0, ExchangMarketEnum.MarketName];
DataSet ds = DataFactory<ExchangMarketSqlProvider>.CreateProvider.GetFieldsDataSet(sql);
if (ds.Tables.Count > 0)
{
sb.Append("<option id=\"0\">请选择市场 </option>");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
sb.Append("<option id=\"" + ds.Tables[0].Rows[i][0].ToString() + "\">" + ds.Tables[0].Rows[i][1].ToString() + "</option>");
}
return sb.ToString();
}
else
{
return sb.ToString();
}
}
[WebMethod]
public string GetProductFromMarketID(int MarketID)
{
List<SqlParam> _list = new List<SqlParam>();
_list.Add(new SqlParam("@MarketID", DbType.Int32, MarketID));
SqlQuery sql = new SqlQuery();
sql.TableName = new ExchangProductEntity().TableName;
sql.SqlReturnField = "*";
sql.SqlOrderField = "DisplayOrder";
sql.OrderType = true;
sql.Param = _list;
sql.SqlWhere = StringHelper.SqlWhere(0, "MarketID", "=");
IList<ExchangProductEntity> list =
DataFactory<ExchangProductSqlProvider>.CreateProvider.GetEntityList(sql);
StringBuilder strProductList = new StringBuilder();
for (int i = 0; i < list.Count; i++)
{
strProductList.Append("<li class=\"displayorder\" value=" + list[i].ID + " id=" + list[i].ID + ">" + list[i].ProductName + "</li>");
}
return strProductList.ToString();
}
#endregion

#region 市场排序
[WebMethod]
public int MarketOrder(ArrayList al)
{
int flat = 0;
try
{
if (al.Count > 0)
{
for (int i = 1; i <= al.Count; i++)
{
ExchangMarketEntity me = new ExchangMarketEntity();
me.ID = Convert.ToInt32(al[i - 1]);
me.DisplayOder = i;
DataFactory<ExchangMarketSqlProvider>.CreateProvider.UpdateEntity(me);
}
}
}
catch
{
flat = 1;
}
return flat;
}
#endregion

#region 接口排序
[WebMethod]
public int SendInterFaceOrder(ArrayList al)
{
int flat = 0;
try
{
if (al.Count > 0)
{
for (int i = 1; i <= al.Count; i++)
{
ExchangSendInterFaceEntity se = new ExchangSendInterFaceEntity();
se.ConfigID = Convert.ToInt32(al[i - 1]);
se.OrderBy = i;
DataFactory<ExchangSendInterFaceSqlProvider>.CreateProvider.UpdateEntity(se);
}
}
}
catch
{
flat = 1;
}
return flat;
}
#endregion

#region 模块排序
[WebMethod]
public string GetAllModule()
{
StringBuilder sb = new StringBuilder();
ExchangModuleEntity _me = new ExchangModuleEntity();
SqlQuery sql = new SqlQuery();
List<SqlParam> _list = new List<SqlParam>();
_list.Add(new SqlParam("@ParentID", DbType.Int32, 0));
sql.TableName = _me.TableName;
sql.SqlOrderField = "DisplayOrder";
sql.OrderType = true;
sql.Param = _list;
sql.SqlWhere = StringHelper.SqlWhere(0, "ParentID", "=");
sql.SqlReturnField = _me[0, ExchangModuleEnum.ModuleId] + "," + _me[0, ExchangModuleEnum.ModuleName];
DataSet ds = DataFactory<ExchangModuleSqlProvider>.CreateProvider.GetFieldsDataSet(sql);
if (ds.Tables.Count > 0)
{
sb.Append("<option id=\"0\">根模块</option>");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
sb.Append("<option id=\"" + ds.Tables[0].Rows[i][0].ToString() + "\">" + ds.Tables[0].Rows[i][1].ToString() + "</option>");
}
return sb.ToString();
}
else
{
return sb.ToString();
}
}

[WebMethod]
public string GetModuleFromParentID(int ParentID)
{
List<SqlParam> _list = new List<SqlParam>();
_list.Add(new SqlParam("@ParentID", DbType.Int32, ParentID));
SqlQuery sql = new SqlQuery();
sql.TableName = new ExchangModuleEntity().TableName;
sql.SqlReturnField = "*";
sql.SqlOrderField = "DisplayOrder";
sql.OrderType = true;
sql.Param = _list;
sql.SqlWhere = StringHelper.SqlWhere(0, "ParentID", "=");
IList<ExchangModuleEntity> list =
DataFactory<ExchangModuleSqlProvider>.CreateProvider.GetEntityList(sql);
StringBuilder strModuleList = new StringBuilder();
for (int i = 0; i < list.Count; i++)
{
strModuleList.Append("<li class=\"displayorder\" value=" + list[i].ModuleId + " id=" + list[i].ModuleId + ">" + list[i].ModuleName + "</li>");
}
return strModuleList.ToString();
}
[WebMethod]
public int ModuleOrder(ArrayList al)
{
int flat = 0;
try
{
if (al.Count > 0)
{
for (int i = 1; i <= al.Count; i++)
{
ExchangModuleEntity me = new ExchangModuleEntity();
me.ModuleId = Convert.ToInt32(al[i - 1]);
me.DisplayOrder = i;
DataFactory<ExchangModuleSqlProvider>.CreateProvider.UpdateEntity(me);
}
}
}
catch
{
flat = 1;
}
return flat;
}
#endregion
}
}

fphuang 2009-06-04
  • 打赏
  • 举报
回复
你到google.com搜一下,应该有很多,或者找一本webservice的基础书,看看
tulong403 2009-06-03
  • 打赏
  • 举报
回复
我觉这种问题去找yw好了
esrichen 2009-06-03
  • 打赏
  • 举报
回复
我认为你应该有两种方法可以用(你的webService必须支持数据库的访问)。

第一:将你两张表的信息放到服务器的数据库中,从服务器中的数据库读取表的信息;

第二:你的服务器可以通过地址访问到你的机器,直接从你的机器中读取表的信息。

这是我的理解
whoami333 2009-06-03
  • 打赏
  • 举报
回复
你的WebService不能访问你的数据库吗?

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧