2010-10-26 9 views
0

est stringbuilder est même dans android java et C# ?? Im utilisant stringbuilder dans C# (Webservice REST) ​​.. comment puis-je utiliser avec la même fonctionnalité dans Java? Ou im utilisant stringentity dans java.wat est l'équivalent dans C# (REST Webservice)?Concernant Stringbuilder dans C#

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); 

c'est pour le post()

et im webservice mise en œuvre par

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(); 
    } 

ici les données insérées dans la base de données est "vide" ... la réponse est comme « OK ..Status 200 "

Répondre

3

Pourquoi essayez-vous de transmettre l'objet entier? Vous ne pouvez pas passer un objet stringbuilder d'un paradigme de programmation à un autre - même si vous sérialisiez l'objet StringBuilder en Java, je soupçonne que vous ne serez pas capable de l'insérer dans un StringBuilder C# (à moins que un StringBuilder sérialisé en Java est simplement une chaîne).

Vous devrez transmettre la chaîne contenue dans l'objet stringbuilder sous forme de chaîne. Le constructeur de chaîne C# peut alors se construire en utilisant la chaîne fournie comme son état initial.

Cela vaut pour n'importe quel objet - il sera plus facile et plus simple de passer par l'élément simple plutôt que par un objet entier, donc tout est basique (primitif) type (string, int, si c'est XML, sérialiser en une chaîne: l'extrémité distante peut désérialiser), etc.

+0

salut chris, c'est le service que j'ai écrit public bool CreateCustomer (StringBuilder strObj) {// ici j'insère dans db //} mais cette même fonction le android ne pouvait pas reconnaître à cause du stringbuilder .. que puis-je faire pour cela ?? la seule chose possible dans android est de poster en utilisant stringentity .. quel est l'équivalent dans C# ?? et im en utilisant le format json – Ganesh

+0

J'ai mis en œuvre la même chose de convertir le json en format chaîne et l'envoi au service .. mais toujours les données ne sont pas reçues – Ganesh

+0

Pouvez-vous mettre à jour votre question, y compris: (1) un exemple de comment vous appelez la méthode de Java (2) comment le service est écrit (que vous avez inclus dans votre commentaire, mais c'est mieux dans la question) et (3) dites ce qui se passe quand vous lancez un type de chaîne de base (je ne fais pas Je ne sais pas ce qu'est la rigueur) et (4) quelles erreurs (le cas échéant) vous voyez lorsque vous appelez le service. –