flex如何调用webservice中的自定义类,下面有个不错的示例,不了解的朋友可以参考下
复制代码 代码如下:
public class ReturnResult
{
public int curIndex { get; set; }
public DataTable idxList { get; set; }
}
//测试数据库连接
[WebMethod(Description = "!!!测试数据库连接,链接字符串在web.config中")]
public bool conectDB()
{
strCon = ConfigurationSettings.AppSettings["sqlConDuke"];
conn = new SqlConnection(strCon);
try
{
conn.Open();
return true;
}
catch (Exception)
{
return false;
}
finally
{
conn.Close();
}
}
复制代码 代码如下:
[WebMethod(Description = "根据 照片名 获得详细数据(DataTable),strTb,eg:PanView;strImgName,eg:20131019072740-0000150")]
public DataTable getInfoByImgName(string strTb, string strImgName)
{
bool ifCon = conectDB();
if (ifCon)
{
string sql_BfCar = "SELECT * FROM dbo." + strTb + " where ImageName LIKE '%" + strImgName + "%'";
da = new SqlDataAdapter(sql_BfCar, conn);
myds = new DataSet();
da.Fill(myds);
return myds.Tables[0];
}
else
{
return null;
}
}
[WebMethod(Description = "根据 照片名 获得所在Link的所有数据(ReturnResult),strTb,eg:PanView;strImgName,eg:20131019072740-0000150")]
public ReturnResult getLinkDTByImgName(string strTb, string strImgName)
{
ReturnResult returnResult = new ReturnResult();
bool ifCon = conectDB();
if (ifCon)
{
returnResult.curIndex = Convert.ToInt32(getInfoByImgName(strTb, strImgName).Rows[0][0]);
string strLinkGuid = getInfoByImgName(strTb, strImgName).Rows[0][1].ToString();
string sql_BfCar = "SELECT * FROM dbo." + strTb + " where LinkGuid LIKE '%" + strLinkGuid + "%'";
da = new SqlDataAdapter(sql_BfCar, conn);
myds = new DataSet();
da.Fill(myds);
returnResult.idxList = myds.Tables[0];
return returnResult;
}
else
{
return null;
}
}
Flex代码:
复制代码 代码如下:
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="application1_creationCompleteHandler(event)">
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.events.FlexEvent;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
public var arr:ArrayCollection=new ArrayCollection();
public var aaa:String=new String();
protected function webservice1_faultHandler(event:FaultEvent):void
{
Alert.show(event.fault.toString());
}
protected function getLinkDTByImgNameHandler(event:ResultEvent):void
{
// aaa=this.myweb.getLinkDTByImgName.lastResult.curIndex;
// arr=this.myweb.getLinkDTByImgName.lastResult.idxList.Tables.Table.Rows;
aaa=event.result.curIndex;
arr=event.result.idxList.Tables.Table.Rows;
Alert.show(aaa+" "+arr.length.toString());
}
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
myweb.getLinkDTByImgName("PanView","20131019072740-0000150");
}
]]>
以上就是flex调用webservice中的自定义类的方法的详细内容,更多请关注0133技术站其它相关文章!