当我在Web服务中调用方法时发生错误 [英] error occured when i call a method in my web service
本文介绍了当我在Web服务中调用方法时发生错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我目前正在开发Web服务:
但是当我调用此方法时,发生此错误:
测试表单仅适用于将原始类型作为参数的方法"
请帮助我:((:((
这是我的代码:
Hi,
I am currently developing a web service:
but when I call this method this error occurred:
"The test form is only available for methods with primitive types as parameters"
Please help me :(( :((
This is my code:
<br />
[WebMethod]<br />
public FactureTopNet CreationFacture( ref int NUM_FACTURE, ref int NUM_JUR_FACT,ref int SOCIETE, ref int TYPE, ref string LOGIN_CREATION,ref DateTime DATE_CREATION, ref string LOGIN_MODIFICATION,ref DateTime DATE_MODIFICATION,ref Decimal MNT_FACT,ref decimal REMISE, ref decimal NET_PAYE,ref decimal REST_PAYE,ref string OBSERV, ref int ID_CLIENT,ref string REMARQUE,ref string MONTANTTEXT, ref int TIMBRE, ref int AVOIR, ref int NUM_LISTE,ref int ID_REV,ref int NUM_PF, ref int NUM_PP, ref string REFERENCE, ref string CLE, ref int ID_COM,ref decimal MONTANT_COM, ref DateTime DATE_COM,ref int RED_COM, ref int INTER_GROUPE)<br />
{<br />
<br />
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();<br />
conn.ConnectionString = @"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=topnet;Initial Catalog=TopnetBase;Data Source=SWEET-4B6F892B4\SQLEXPRESS";<br />
conn.Open();<br />
FactureTopNet facture = new FactureTopNet();<br />
int r;<br />
string req = "INSERT INTO facture (NUM_FACTURE, NUM_JUR_FACT, SOCIETE, TYPE, LOGIN_CREATION, DATE_CREATION,LOGIN_MODIFICATION,DATE_MODIFICATION,MNT_FACT, REMISE, NET_PAYE, REST_PAYE, OBSERV, ID_CLIENT, REMARQUE, MONTANTTEXT, TIMBRE, AVOIR,NUM_LISTE,ID_REV,NUM_PF,NUM_PP, REFERENCE, CLE, ID_COM,MONTANT_COM, DATE_COM, RED_COM, INTER_GROUPE)VALUES(''" + NUM_FACTURE + "'',''" + NUM_JUR_FACT + "'',''" + SOCIETE + "'',''" + TYPE + "'',''" + LOGIN_CREATION + "'',''" +DATE_CREATION + "'',''" + LOGIN_MODIFICATION + "'',''" + DATE_MODIFICATION + "'',''" + MNT_FACT + "'',''" + REMISE + "'',''" + NET_PAYE + "'',''" + REST_PAYE + "'',''" + OBSERV + "'',''" + ID_CLIENT + "'',''" + REMARQUE + "'',''" + MONTANTTEXT + "'',''" + TIMBRE + "'',''" + AVOIR + "'',''" + NUM_LISTE + "'',''" + ID_REV + "'',''" + NUM_PF + "'',''" + NUM_PP + "'',''" + REFERENCE + "'',''" + CLE + "'',''" + ID_COM + "'',''" +MONTANT_COM + "'',''" + DATE_COM + "'',''" + RED_COM + "'',''" + INTER_GROUPE + "'')";<br />
System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand(req, conn);<br />
r = command.ExecuteNonQuery();<br />
facture.NUM_FACTURE = NUM_FACTURE;<br />
facture.NUM_JUR_FACT = NUM_JUR_FACT;<br />
<br />
facture.SOCIETE = SOCIETE;<br />
facture.TYPE = TYPE;<br />
facture.LOGIN_CREATION = LOGIN_CREATION;<br />
facture.DATE_CREATION = DATE_CREATION;<br />
facture.LOGIN_MODIFICATION = LOGIN_MODIFICATION;<br />
facture.DATE_MODIFICATION = DATE_MODIFICATION;<br />
facture.MNT_FACT = MNT_FACT;<br />
facture.REMISE = REMISE;<br />
facture.NET_PAYE = NET_PAYE;<br />
facture.REST_PAYE = REST_PAYE;<br />
facture.OBSERV = OBSERV;<br />
facture.ID_CLIENT = ID_CLIENT;<br />
facture.REMARQUE = REMARQUE;<br />
facture.MONTANTTEXT = MONTANTTEXT;<br />
facture.TIMBRE = TIMBRE;<br />
facture.AVOIR = AVOIR;<br />
facture.NUM_LISTE = NUM_LISTE;<br />
facture.ID_REV = ID_CLIENT;<br />
facture.NUM_PF = NUM_PF;<br />
facture.NUM_PP = NUM_PP;<br />
facture.REFERENCE = REFERENCE;<br />
facture.CLE = CLE;<br />
facture.ID_COM = ID_COM;<br />
facture.MONTANT_COM = MONTANT_COM;<br />
facture.DATE_COM = DATE_COM;<br />
facture.RED_COM = RED_COM;<br />
facture.INTER_GROUPE = INTER_GROUPE;<br />
return facture;<br />
<br />
<br />
<br />
<br />
}<br />
推荐答案
我写了一个提示技巧:
将动态参数列表传递到Web服务 [ ^ ]
I wrote a tip trick about it:
Pass Dynamic List of Parameters to Web Service[^]
That should get you started.
我很确定您不能将ref用作参数修饰符.与其从地狱中获取参数列表,不如创建一个XML字符串并仅传递一个参数,然后返回带有结果的xml字符串.
相信我-它更容易维护.
I''m pretty sure you can''t use ref as a parameter modifier. Instead of doing th parameter list from hell, create a XML string and pass just one parameter, and return a xml string with the results.
Believe me - it''s much simpler and easier to maintain.
可能是由于数据类型不匹配所致.您可以查看此页面
http://forums.asp.net/t/1373290.aspx [
May be this is due to data type mismatch.You can check this page
http://forums.asp.net/t/1373290.aspx[^]
这篇关于当我在Web服务中调用方法时发生错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文