我是 android 的新手,但现在在 Android 上做了更多的编码。现在我有一个疑问。我使用 Android 和 SQL Lte 创建了 android 数据库应用程序。但 SQL Lite 是客户端站点数据库。但现在我的要求是,我想要一个像 SQL Server 这样的数据库,以便将我的应用程序连接到 SQL Server。所以假设,考虑和举例,我知道 WCF。我创建了一个 WCF 服务,其功能类似于:我在 IIS 上托管 WCF,因为 android 不响应 localhost,所以我在 IIS 上托管 WCF
Public string check(string username,string password)
{
SQLConnection con=new SQLConnection("Data Source=.;Database=test;Integrated Security=true");
SQLDataAdapeter ad=new SQLDataAdapter("select * from table where usrename='"+username+"'and password='"+password+"'");
Dataset ds=new Dataset();
ad.fill(ds,"table");
if(ds.Tables[0].Rows.Count>0)
{
return "true";
}
else
{
return "false";
}
}
我在本地主机中托管了 WCF,以便我可以在我的 Android 应用程序编码中使用此服务。
就像:
HttpGet httpGet=new HttpGet("http://192.168.1.111:8083/Service1.svc/checkLogin?username="+UserName+"&password="+Password);
//Get the response
HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();
InputStream stream=httpEntity.getContent();
但是,尽管代码正确,但在这里我没有得到任何 httpEntity。我采用这个实体并希望使用以下函数将其转换为字符串:
public static String convertStreamToString(InputStream is)
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line = null;
try {
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
}
catch (IOException e) {
e.printStackTrace();
}
finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}
但是,它不返回任何字符串值,调试器继续捕获点。那么我该怎么做才能从我的 WCF 中获得字符串格式的结果呢?