Веб-служба работает на моем компьютере, но не работает на сервере - PullRequest
0 голосов
/ 03 сентября 2018
System.InvalidOperationException: Missing parameter: AracMarka.
at System.Web.Services.Protocols.ValueCollectionParameterReader.Read(NameValueCollection collection)
at System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()
at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()

Параметр моего WebMethot работает на моем компьютере. Я что-то пишу и отвечаю мне, но я загружаю на сервер свою работу веб-сервиса, но когда я вызываю метод и пишу туда, это вызывает ошибку Missing Parameter

Мой компьютер локальный сервер, Сервер и код

c

[WebMethod]
public Bilgiler GetBilgiForMarka(String AracMarka, String AracModel, String Motor)
{
    string a = "Data Source=.;Initial Catalog=Android;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFramework";
    Bilgiler bilgilerimiz = new Bilgiler();

    SqlConnection conn = new SqlConnection(a);
    SqlCommand command = new SqlCommand("SELECT ID FROM [Android].[dbo].[KitAracModel] WHERE AracMarka='" + AracMarka + "' AND AracModel='" + AracModel + "' AND Motor='" + Motor + "'");
    command.Connection = conn;
    conn.Open();
    int ax = (int)command.ExecuteScalar();

    conn.Close();

    using (SqlConnection con = new SqlConnection(a))
    {
        SqlCommand cmd = new SqlCommand("SP_BILGILERIGET", con);
        cmd.CommandType = System.Data.CommandType.StoredProcedure;
        SqlParameter parametre = new SqlParameter();
        parametre.ParameterName = "@ID";
        parametre.Value = ax;
        cmd.Parameters.Add(parametre);
        con.Open();
        SqlDataReader DR = cmd.ExecuteReader();
        while (DR.Read())
        {

            bilgilerimiz.ID = Convert.ToInt32(DR["ID"]);
            bilgilerimiz.AracMarka = DR["AracMarka"].ToString();
            bilgilerimiz.AracModel = DR["AracModel"].ToString();
            bilgilerimiz.Motor = DR["Motor"].ToString();
            bilgilerimiz.Silindir = DR["Silindir"].ToString();
            bilgilerimiz.Guc = DR["Guc"].ToString();
            bilgilerimiz.KitAd = DR["KitAd"].ToString();
            bilgilerimiz.KitNo = DR["KitNo"].ToString();
        }
    }
    return bilgilerimiz;
}

1 Ответ

0 голосов
/ 03 сентября 2018

Похоже, что сгенерированный запрос не одинаков на локальном сервере и на сервере. Я предлагаю вам сопоставить запрос, когда вы запускаете его на локальном сервере и на сервере с помощью инструмента регистрации веб-трафика, такого как Fiddler .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...