Member 14659146 Ответов: 1

Вызов преобразованного ввода из другого файла cls.cs


У меня есть aspx-файл, с расширением aspx.в CS и CLS.файл CS.

в CLS.файл CS :

public void converty5(string 5y6,out DataTable dt)
      {
          string strSql;



          strSql = " select convert || substr('" +5y6 + "', 22, 11) ";
         strSql +=   " AS Converted from enf ";
          strSql +=  " where dfh_partno = substr('" + 5y6 + "', 1, 15) ";



          cls.GetDataTable(strSql, out dt);


      }

и на этом моя функция в aspx-файл.файл CS

protected void InvisButton_Click(object sender, EventArgs e)
{
    string phone = Scancuba.Text;
    resultscan.Text = "";

    //bool result = Cls.convertphone(phone);

Cls.convertphone(phone,out dt);


    if(result==true)
    {
        resultscan.Text = "Insert success " + phone;
        resultscan.Style.Add("background-color", "#90ee90");        
    }
}

Моя проблема заключается в том, что когда я вставляю ввод, запрос работает и преобразует мой ввод в нужный формат, но в отображаемом сообщении он отображает " вставить успех (исходный ввод, который еще не преобразован)". Я знаю, что это потому, что я не передал преобразованное значение, но я не знаю, как это закодировать. Я очень нуб в этом деле asp.net но, пожалуйста, направь меня.. Заранее спасибо.

Что я уже пробовал:

Я пытался следовать этому как передать значение/сведения из aspx-файл.CS для .CS-файл | форумах ASP.NET [^] но до сих пор не знаю, как реализовать его с помощью моего кода

Mehul M Thakkar

Что такое конвертфон? Я бы рекомендовал вам начать с объектно-ориентированного программирования.

Richard Deeming

strSql += "where c.phone_PARTNO = substr('" + p + "', 1, 15)";

Не делай этого так!

Ваш код почти наверняка уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.

Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]

Laxmidhar tatwa technologies

Ваш cls.cs имеет имя функции INSERTDATA, но вы вызываете функцию convertphone ,где она определяется, пожалуйста, скажите

Member 14659146

спасибо что указали на это сэр я все исправлю !

Member 14659146

Я обновил свой вопрос мне очень жаль что я его пропустил

1 Ответов

Рейтинг:
6

F-ES Sitecore

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

Cls.convertphone(phone,out dt);
string convertedValue = (string) dt.Rows[0][0];