Я прочитал почти все связанные вопросы, но, к сожалению, никто не решил мою проблему.
Моя проблема в том, что я создал веб-сервис на C # и создал в нем четыре метода для разных целей, и один из них называется getSections, вот он:
[WebMethod]
public string getSections()
{
connectToDB();
da = new SqlDataAdapter("select * from Sections", link);
dt = new DataTable();
da.Fill(dt);
return Newtonsoft.Json.JsonConvert.SerializeObject(dt,Newtonsoft.Json.Formatting.Indented);
}
Когда я тестирую веб-сервис из Visual Studio, он показывает ссылки на четыре метода, чтобы вызывать их один за другим, все они работают нормально, поэтому я загрузил их на свой сервер. После этого я попытался получить доступ к методу getSections из моего приложения, используя залп, и вот как я это сделал:
private fun getAllSections() {
/**
* Start Downloading all the sections
*/
var uri="http://......../myProject/WebService1.asmx?op=getSections";
val stringRequest = object : StringRequest(Request.Method.POST, uri, Listener<String> { response ->
Log.i("SectionsResponse", response)
Toast.makeText(this,"SectionsResponse: "+response,Toast.LENGTH_LONG).show()
}, object : Response.ErrorListener {
override fun onErrorResponse(error: VolleyError?) {
if (error != null) {
Log.i("SectionsError:", error.message.toString())
Toast.makeText(baseContext,"error"+error.message.toString(),Toast.LENGTH_LONG).show()
}
}
}) {
override fun getParams(): MutableMap<String, String> {
val params=HashMap<String,String>()
//params.put("a","aa")
return params
}
}
if (Funs().isOnline(this)) {
val requesQueue = Volley.newRequestQueue(this)
requesQueue.add<String>(stringRequest)
} else {
Toast.makeText(this, resources.getString(R.string.connectionFailed), Toast.LENGTH_LONG).show()
}
/**
* End Downloading all the sections
*/
}
После всего вышеперечисленного я получаю нулевой результат от прослушивателя ошибок, что означает, что URL-адрес недействителен или не найден.
так
Каков правильный способ доступа к методу в веб-сервисе c # с использованием библиотеки залпа.
ценю любую помощь.