是androidbuilder和c#??
中的stringbuilder是一样的我在c#中使用stringbuilder(REST Webservice)..如何在 Java中使用相同的功能?
或者我在java.wat中使用严格性是等同于c#(REST Webservice)?
HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(), 10000); //Timeout Limit
HttpResponse response;
JSONObject json = new JSONObject();
String URL ="url";
try{
HttpPost post = new HttpPost(URL);
json.put("CNo",112);
json.put("CName",name);
StringEntity se = new StringEntity(json.toString());
se.setContentType("application/json; charset=utf-8");
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json; charset=utf-8"));
post.setHeader("Accept","application/json");
post.setHeader("Content-type","application/json; charset=utf-8");
String ss= post.toString();
response = client.execute(post);
这是针对post()
并在web服务中实现
public bool CreateCustomer(StringBuilder strObj)
{
// JavaScriptSerializer js = new JavaScriptSerializer();
// Customer custObj = js.Deserialize<Customer>(strObj.ToString());
// strObj.ToString();
bool Inserted = false;
String connString = ConfigurationManager.ConnectionStrings["connWebOrdering"].ConnectionString;
SqlConnection Conn = new SqlConnection(connString);
try
{
SqlCommand cmd = new SqlCommand("insert into cust(obj) values('" + strObj + "')", Conn);
Conn.Open();
int rowsaffected = cmd.ExecuteNonQuery();
if (rowsaffected == 1)
{
Inserted = true;
}
}
catch (Exception)
{ }
finally
{
Conn.Close();
}
此处数据库中插入的数据为“空白”...响应为“OK..Status 200”
答案 0 :(得分:3)
为什么要尝试传递整个对象?
你不能将stringbuilder对象从一个编程范例传递给另一个编程范例 - 即使你用Java序列化StringBuilder对象,我怀疑你将无法将它吸入C#StringBuilder(除非java中的序列化StringBuilder只是一个字符串)。
您必须将stringbuilder对象中包含的字符串作为字符串传递。然后,C#stringbuilder可以使用提供的字符串构建自身,因为它是初始状态。
这适用于任何对象 - 通过简单项而不是整个对象将更容易和更简单,因此将所有内容转换为最基本(原始)类型(字符串,int,如果它是XML,序列化)它是一个字符串:远程端可以反序列化)等。