代码如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
namespace WebServiceTest
{
/// <summary>
/// Test 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
public class Test : System.Web.Services.WebService
{ [WebMethod]
public int Test1(int a,int b)
{
return a+b;
}
[WebMethod]
public int Test2(int a, int b)
{
return a - b;
}
[WebMethod]
public XmlDocument Test3(int a, int b)
{
string xmlstr = "<nm values='" + a + "' date='2014-1-2' count='14' page='" + b + "'>"
+ "<domain>张三</domain>"
+ "<domain>张三</domain>"
+ "<domain>张三</domain>"
+ "<domain>张三</domain>" + "</nm>";
//关键
XmlDocument XmlDoc = new XmlDocument();
XmlDoc.LoadXml(xmlstr);
return XmlDoc;
}
[WebMethod]
public XmlDocument GetStudentById(int a)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "server=.;database=Test;uid=sa;pwd=sa";
con.Open();
//创建数据库命令
SqlCommand cmd = con.CreateCommand();
//创建查询语句
cmd.CommandText = "SELECT * FROM stu_test where stu_id="+a;
//从数据库中读取数据流存入reader中
SqlDataReader reader = cmd.ExecuteReader();
//从reader中读取下一行数据,如果没有数据,reader.Read()返回flase
Hashtable ht = new Hashtable();
while (reader.Read())
{
//reader.GetOrdinal("id")是得到ID所在列的index,
//reader.GetInt32(int n)这是将第n列的数据以Int32的格式返回
//reader.GetString(int n)这是将第n列的数据以string 格式返回
int stu_id = reader.GetInt32(reader.GetOrdinal("stu_id"));
string stu_name = reader.GetString(reader.GetOrdinal("stu_name"));
int stu_age = reader.GetInt32(reader.GetOrdinal("stu_age"));
string stu_class= reader.GetString(reader.GetOrdinal("stu_class"));
//格式输出数据 ht.Add("stu_id",stu_id);
ht.Add("stu_name", stu_name);
ht.Add("stu_age", stu_age);
ht.Add("stu_class", stu_class);
} Object stu_id1 = ht["stu_id"].ToString();
Object stu_name1 = ht["stu_name"].ToString();
Object stu_age1 = ht["stu_age"].ToString();
Object stu_class1 = ht["stu_class"].ToString();
string xmlstr = "<student stu_id='" + a + "' date='2014-1-2'>" + "<stu_name>" + stu_name1 + "</stu_name>"
+ "<stu_age>" + stu_age1 + "</stu_age>"
+ "<stu_class>" + stu_class1 + "</stu_class>"
+ "</student>";
//关键
XmlDocument XmlDoc = new XmlDocument();
XmlDoc.LoadXml(xmlstr);
return XmlDoc;
}
}
}

测试

结果如下图

VS2013开发asmx接口根据ID查询对象的更多相关文章

  1. VS2013开发asmx接口返回一个自定义XML

    1:利用XmlDocument生成一个xml文档返回,代码如下 using System;using System.Collections.Generic;using System.Linq;usin ...

  2. 根据id查询数据(向前台返回json格式的数据)

    /** *@description 根据主键查询Bean */ @RequestMapping(value="/getBean/{getId}") public void getB ...

  3. 使用mybatis开发Dao的原始方法,实现根据用户id查询一个用户信息 、根据用户名称模糊查询用户信息列表 、添加用户信息等功能

    1.需求 将下边的功能实现Dao: 根据用户id查询一个用户信息 根据用户名称模糊查询用户信息列表 添加用户信息 2. 原始Dao开发方法需要程序员编写Dao接口和Dao实现类 3.User.xml映 ...

  4. NX二次开发-UFUN查询对象的类型和子类型UF_OBJ_ask_type_and_subtype

    NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...

  5. 早期MyBatis开发与接口式Mybatis开发的简介

    早期MyBatis开发与接口式Mybatis开发的简介 一.早期版本的myBatis使用 导jar包            1.配置mybatis.xml的配置文件                1) ...

  6. Mybatis进阶学习笔记——动态代理方式开发Dao接口、Dao层(推荐第二种)

    1.原始方法开发Dao Dao接口 package cn.sm1234.dao; import java.util.List; import cn.sm1234.domain.Customer; pu ...

  7. 15-Django开发REST接口

    使用Django开发REST接口 我们以在Django框架中使用的图书以及书中人物案例来写一套支持图书数据增删改查的REST API接口,来理解REST API的开发(前后端均发送JSON格式数据) ...

  8. Django:前后端分离 djangorestframework开发API接口 serializer序列化认证组件

    参考:https://blog.csdn.net/zhangmengran/article/details/84887206 目的: 使用serializer序列化器将QuerySet数据序列化为js ...

  9. 使用Flask开发简单接口(4)--借助Redis实现token验证

    前言 在之前我们已开发了几个接口,并且可以正常使用,那么今天我们将继续完善一下.我们注意到之前的接口,都是不需要进行任何验证就可以使用的,其实我们可以使用 token ,比如设置在修改或删除用户信息的 ...

随机推荐

  1. TCP三次握手&四次挥手(示意图)

    经典的三次握手示意图:(#add,“握手”即图中左边到右边的连线)    经典的四次握手关闭图:    TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即t ...

  2. How Visual Studio 2012 Avoids Prompts for Source

    [原文地址]:http://blogs.msdn.com/b/heaths/archive/2012/07/26/how-visual-studio-2012-avoids-prompts-for-s ...

  3. USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JS16

    Introduction The attached files provide a port of a combined TBDML/OSBDM code to a MC9S08JS16 proces ...

  4. 源码编译Tkinter

    要让Python支持Tkinter, 需要首先安装tcl和tk两个软件包. 下载地址: http://www.tcl.tk/software/tcltk/download.html 或 tcl:htt ...

  5. Oracle Apps DBA R12.2 Syllabus

    1. What is Oracle R12.2 R12.2 Definition Architecture Advantages of R12.2 Limitations of R12.2 What ...

  6. JSTL标签用法:<c:choose><c:forEach><c:if><c:when><c:set>

    JSP 标准标记库( Standard Tag Library , JSTL) 是一组以标准化格式实现许多通用的 Web 站点功能的定制标记. JSP 技术的优势之一在于其定制标记库工具.除了核心 J ...

  7. 【SVN】如果windows用户忘记了svn的用户名和密码怎么办?

    如果windows用户忘记了svn的用户名和密码怎么办? 1>你得进入默认地址 C:\Users\Administrator\AppData\Roaming\Subversion\auth\sv ...

  8. MongoDB:Map-Reduce

    Map-reduce是一个考虑大型数据得到实用聚集结果的数据处理程式(paradigm).针对map-reduce操作,MongoDB提供来mapreduce命令. 考虑以下的map-reduce操作 ...

  9. spring boot对输入的字符串进行html转码

    可以使用HtmlUtils这个类进行操作.具体的可以参考API,或者点出来看.

  10. tomcat配置jdbc

    server.xml下<GlobalNamingResources> <Resource name="jdbc/Huobanplus"               ...