Я создал приложение для системы управления Аптекой, используя mysql и c #. У них есть базы данных на локальном и удаленном серверах. В основном все записи хранятся в локальной базе данных. Затем после того, как вновь созданные записи должны быть загружены на удаленный сервер с помощью файла JSon. У меня также есть код для выполнения данных файла Json на удаленном сервере с помощью php. У меня есть новые записи на рабочем столе, используя файл json.
Код экспорта файла JSon:
private void btnExportToJson_Click(object sender, EventArgs e)
{
string contents = (DataTableToJSONWithStringBuilder(_dt));
//MessageBox.Show(afd);
System.IO.File.WriteAllText(@"C:\Users\NICK-PC\Desktop\path.json", contents);
Application.Exit();
}
Код создания файла JSon:
public string DataTableToJSONWithStringBuilder(DataTable table)
{
var jsonString = new StringBuilder();
if (table.Rows.Count > 0)
{
jsonString.Append("[\n");
for (int i = 0; i < table.Rows.Count; i++)
{
jsonString.Append("{\n");
for (int j = 0; j < table.Columns.Count; j++)
{
if (j < table.Columns.Count - 1)
{
jsonString.Append("\t\"" + table.Columns[j].ColumnName.ToString() + "\":" + "\"" +
table.Rows[i][j].ToString() + "\",\n");
}
else if (j == table.Columns.Count - 1)
{
jsonString.Append("\t\"" + table.Columns[j].ColumnName.ToString() + "\":" + "\"" +
table.Rows[i][j].ToString() + "\"");
}
}
if (i == table.Rows.Count - 1)
{
jsonString.Append("}");
}
else
{
jsonString.Append("\n},");
jsonString.Append("\n");
}
}
jsonString.Append("\n]");
}
return jsonString.ToString();
}
Я использовал следующий код, но не работает
public void jsonOps()
{
// Preparing Json object to send to the remote server
jsonLogin li = new jsonLogin();
li.username = "myadmin";
li.password = "log@678*";
string jLoginString = JsonConvert.SerializeObject(li);
// Create HTTP POST request
var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://www.youraddress.com");
httpWebRequest.ContentType = "application/json";
httpWebRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
httpWebRequest.Accept = "application/json";
httpWebRequest.Method = "POST";
string output = "";
// Connecting to the server. Sending request and receiving response
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
streamWriter.Write(jLoginString);
streamWriter.Flush();
streamWriter.Close();
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
output = streamReader.ReadToEnd();
}
}
// Reading JSON response
JsonTextReader reader = new JsonTextReader(new StringReader(output));
while (reader.Read())
{
if (reader.Value != null)
{
textBox1.Text = reader.Value;
}
else
{
// No value exception block
}
}