Web服务错误我在Web服务中发现了错误
本文关键字:Web 错误 服务 发现 | 更新日期: 2023-09-27 18:22:18
AutoComplete.asmx 中的这些方法
[WebMethod]
public List<string> GetCountries(string prefixText)
{
SqlConnection con = new SqlConnection(
ConfigurationManager.ConnectionStrings[
"MarinaNewConnectionString"].ToString());
con.Open();
SqlCommand cmd = new SqlCommand(
"select * from Marina where Country like @Name+'%'", con);
cmd.Parameters.AddWithValue("@Name", prefixText);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
List<string> CountryNames = new List<string>();
for(int i=0;i<dt.Rows.Count;i++)
{
CountryNames.Add(dt.Rows[i][5].ToString());
}
return CountryNames;
}
我发现错误
System.InvalidOperationException:生成XML文档时出错。--->
System.InvalidCastException:无法强制转换类型的对象
编辑:
表的SQL:
CREATE TABLE [dbo].[Marina](
[SNo] [int] IDENTITY(1,1) NOT NULL,
[WebSource] [varchar](500) NULL,
[MarinaName] [varchar](500) NULL,
[Region] [varchar](500) NULL,
[Address] [varchar](500) NULL,
[Country] [varchar](500) NULL,
[fax] [varchar](500) NULL,
[Phone] [varchar](500) NULL,
[Email] [varchar](500) NULL,
[Website] [varchar](500) NULL,
[latitude] [varchar](500) NULL,
[langitude] [varchar](500) NULL,
[NumberOfMoorings] [varchar](500) NULL,
[MGiD] [varchar](500) NULL,
[Association] [varchar](200) NULL,
) ) ON [PRIMARY]
StackTrace:
System.InvalidOperationException:生成XML文档。--->System.InvalidCastException:无法强制转换对象类型为"System.Collections.Generic.List `1[System.String]"的'System.String[]'.atMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write3_rrayOfString(对象o) 在Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfStringSerializer.Serialize(对象objectToSerialize,XmlSerializationWriter编写器)
我认为您将无法返回List<string>
对象。返回字符串数组,而不是泛型。
[WebMethod]
public string[] GetCountries(string prefixText)
{
// .....
return CountryNames.ToArray();
}