1-) C# RMOS - xml to class yapma ve post olarak linke gönderme
https://xmltocsharp.azurewebsites.net/
2-) örnek kod
public static T responseXML<T>(string link, object postClass, T getClass)
{
HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(link);
System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(postClass.GetType());
XmlWriterSettings settings = new XmlWriterSettings();
settings.Encoding = new UnicodeEncoding(false, false); // no BOM in a .NET string
settings.Indent = true;
settings.OmitXmlDeclaration = true;
StringWriter textWriter = new StringWriter();
using (XmlWriter xmlWriter = XmlWriter.Create(textWriter, settings))
{
serializer.Serialize(xmlWriter, postClass);
}
string text = textWriter.ToString();
byte[] postdatabytes = Encoding.UTF8.GetBytes(text);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postdatabytes.Length;
Stream requeststream = request.GetRequestStream();
requeststream.Write(postdatabytes, 0, postdatabytes.Length);
requeststream.Close();
HttpWebResponse resp = (HttpWebResponse)request.GetResponse();
StreamReader responsereader = new StreamReader(resp.GetResponseStream(), System.Text.Encoding.GetEncoding("ISO-8859-9"));
string responseXML = responsereader.ReadToEnd();
XmlSerializer serializer1 = new XmlSerializer(typeof(T));
StringReader reader = new StringReader(responseXML);
T classes = (T)(serializer1.Deserialize(reader));
return classes;
}
private void btnOdalariGetir_Click(object sender, EventArgs e)
{
try
{
Authentication aut = new Authentication();
aut.PropertyID = "14669";
aut.UserID = "apiuser@rmosyazilim.com";
aut.UserPSW = "Rmos2019!Rslv";
Request req = new Request();
req.Authentication = aut;
string link = "https://www.reseliva.com/siteBase/REST/pms2/service/product_list";
ProductResponse.ProductList response = responseXML(link, req, new ProductResponse.ProductList());
}
catch (Exception ex)
{
MessageBox.Show("HATA ! btnOdalariGetir_Click");
}
}