flex 端:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:WebService wsdl="http://localhost/flexService/Service1.asmx?wsdl" id="ws1">
<mx:operation name="sqlcheck" result="ResultHandler()" >
    
<mx:request>
        
<sql>{sql.text}</sql>
    
</mx:request>
</mx:operation>
</mx:WebService>
<mx:Script>
    
<![CDATA[
        import mx.rpc.events.ResultEvent;
            [Bindable]
            private var asd:XML;
            private function ResultHandler():void{
                asd = new XML(ws1.sqlcheck.lastResult);
                dg_comments.dataProvider = asd.children();
            }
    
]]>
</mx:Script>

<mx:TextInput x="43" y="82" width="348" height="24" id="sql" text="select 分类,型号,备注 1, 备注 2 from products_detail"/>
<mx:Button x="399" y="84" label="查询" fontSize="12" click="ws1.sqlcheck.send()"/>
    
<mx:DataGrid x="27" y="135" width="466" height="152" id="dg_comments">
        
<mx:columns>
            
<mx:DataGridColumn headerText="分类" dataField="分类"/>
            
<mx:DataGridColumn headerText="型号" dataField="型号"/>
            
<mx:DataGridColumn headerText="备注 1" dataField="备注 1"/>
            
<mx:DataGridColumn headerText="备注 2" dataField="备注 2"/>
        
</mx:columns>
    
</mx:DataGrid>
</mx:Application>

.net端:
[WebMethod]
        
public string sqlcheck(string sql)
        {
            OleDbConnection connection 
= new OleDbConnection();
            connection.ConnectionString
="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
            connection.ConnectionString 
+= Server.MapPath("product.mdb");

            System.Data.OleDb.OleDbDataAdapter tempAdapter 
=new OleDbDataAdapter(sql,connection);
            DataSet dataset 
= new DataSet("temp");
            tempAdapter.Fill(dataset);
            
return  dataset.GetXml();
        }


FireYang 2006-11-03 12:37 发表评论

译自:http://blog.madskristensen.dk/post/Ping-using-XML-RPC-in-ASPNET.aspx

很多 Blog 已经具备了 Ping 功能,当内容发生被创建或修改的时候,就会 Ping 不同的 Ping 服务,例如 Ping-o-Matic, FeedburnerTechnorati。但并不只是博客才能受惠这个 Ping 服务,所有的网站都可以用这个技术来定期发布它们的更新情况。

所有的这些服务都可以使用 XML-RPC 或它的拓展形式,因此你可以写一个 Ping 类,仅仅是用来添加 Ping 服务的 URL。我已经写了一个可以使用到 ASP.NET 应用程序中的简单静态 Ping 类。

代码:

Here is the the three methods needed to send XML-RPC pings.
有3个方法发送XML-RPC Ping

/// <summary>
/// Sends a ping to various ping services.
/// </summary>
public static void Send()
{ Execute("http://ping.feedburner.com");
Execute("http://rpc.pingomatic.com/RPC2");
}

/// <summary>
/// Creates a web request and with the RPC-XML code in the stream.
/// </summary>
private static void Execute(string url)
{ try
{ HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "text/xml";
request.Timeout = 3000;

AddXmlToRequest(request);
request.GetResponse();
} catch (Exception)
{ // Log the error.
} }

/// <summary>
/// Adds the XML to web request. The XML is the standard
/// XML used by RPC-XML requests.
/// </summary>
private static void AddXmlToRequest(HttpWebRequest request)
{ Stream stream = (Stream)request.GetRequestStream();
using (XmlTextWriter writer = new XmlTextWriter(stream, Encoding.ASCII))
{ writer.WriteStartDocument();
writer.WriteStartElement("methodCall");
writer.WriteElementString("methodName", "weblogUpdates.ping");
writer.WriteStartElement("params");
writer.WriteStartElement("param");
// Add the name of your website here
writer.WriteElementString("value", "The name of your website");
writer.WriteEndElement();
writer.WriteStartElement("param");
// The absolute URL of your website - not the updated or new page
writer.WriteElementString("value", "http://www.example.com");
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndElement();
} }

使用:

下载下面这个类并把它放置在 App_Code 文件夹或一个类库里。在你ASP.NET工程的任何位置你都可以使用如下的形式来调用Send方法:
PingService.Send();

因为要 ping 所有不同的服务,你可能会考虑用异步调用的形式来实现。如此实现。现在你有一个类,可以使用 XML-RPC pings 各种各样的服务了,你可以从这个列表里找 ping 服务 .

PingService.zip (816 bytes)

  1. Asp.Net 2.0 技巧收集
  2. 使用了 c#2.0 的泛式编程
    在 msdn cast 中的 c# 新锐技术中发现了关于泛式编程的视频教程,学习了,收益不少,是通过 IReader 学习的。
  3. 使用了在 Web.config 中注册用户控件和自定义控件:
    相关文章连接:
    pages 的 controls 元素(ASP.NET 设置架构)
    技巧和诀窍:如何在 Web.config 中注册用户控件和自定义控件
    引用:
    web.config 中:
     <?xml version="1.0"?>
    <configuration>
      
    <system.web>          <pages>
          
    <controls>
            
    <add tagPrefix="scottgu" src="~/Controls/Header.ascx" tagName="header"/>
            <
    add tagPrefix="scottgu" src="~/Controls/Footer.ascx" tagName="footer"/>
            <
    add tagPrefix="ControlVendor" assembly="ControlVendorAssembly"/>
          </
    controls>
        
    </pages>
      
    </system.web>
    </configuration> 
    页面中: 
    <html>
    <body>
        
    <form id="form1" runat="server">         
       
    <scottgu:header ID="MyHeader" runat="server" />
        </
    form>
    </body>
    </html>

  1. Key:
    ABQIAAAAQ1k4PLazR-zu5rpqCwE8xhRtNChB2MSeIZ2UHQgW63hgDWqEGRQX2xy-8rXONSDEqC1asGzKPuN5lQ
  2. Demo:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
        <title>Google Maps JavaScript API Example</title>
        <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAQ1k4PLazR-zu5rpqCwE8xhRtNChB2MSeIZ2UHQgW63hgDWqEGRQX2xy-8rXONSDEqC1asGzKPuN5lQ"
          type="text/javascript"></script>
        <script type="text/javascript">

        //<![CDATA[

        function load() {
          if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById("map"));
            map.setCenter(new GLatLng(37.4419, -122.1419), 13);
          }
        }

        //]]>
        </script>
      </head>
      <body onload="load()" onunload="GUnload()">
        <div id="map" style="width: 500px; height: 300px"></div>
      </body>
    </html>

在我的 Eclipse 3.2 中我配置了我经常用的开发工具,可惜太耗内存,不然把自己的开发平台转到 Eclipse 上来。

  1. pydev 的插件(只能在3.2里,在3.1的版本里不能安装)
    1. 帮助>>软件更新>>查找并安装>>再按提示逐步安装.
    2. 填入: http://pydev.sf.net/updates/
  2. flex 插件:


FireYang 2006-11-09 15:07 发表评论

虽然去年才毕业,即将来临的寒假已经是我第二个不不属于我的了;以前感觉工作离我比较远,没想到一句毕业,就把我从这头抡到那头了,已经不能以学生自诩了。

最近听的多的是《新劳动法》,议论最多,关注的也最多;以前这些事很少关注,现在才体会到原来是那么近,忽然又一种感觉:遥远或许只是刹那。

0%