在上面的代码中,错误是无法将布尔类型隐式转换为字符串 [英] in the code above the error is cannot implicitly convert type bool to string

查看:89
本文介绍了在上面的代码中,错误是无法将布尔类型隐式转换为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

using System;

// ASPDOTNETAJAXIM - Copyright 2008 Craig Whiteman
// http://craigwhiteman.blogspot.com

using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data.SqlClient;
using System.Web.Security;
using System.Configuration;

[WebService(Namespace="http://tempuri.org/"), WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1), Microsoft.VisualBasic.CompilerServices.DesignerGenerated(), System.Web.Script.Services.ScriptService()]
public class ChatService : System.Web.Services.WebService
{

	[WebMethod()]
	public string GetMessages(string strFromUserID, string strToUserID)
	{
		bool blnSucess = false;
		string strMessage = null;
		DateTime dDateSent = DateTime.MinValue;

		strMessage = "";

		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strFromUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strFromUserID));
			strFromUserGUID = MemUser.ProviderUserKey.ToString();
			string strToUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strToUserID));
			strToUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = new SqlCommand("SELECT TOP(1) Message, DateSent FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID) ORDER BY DateSent DESC", conn);
			cmd.Parameters.AddWithValue("@SenderUserID", strToUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strFromUserGUID);
			SqlDataReader reader = cmd.ExecuteReader();
			while (reader.Read())
			{
				dDateSent = (DateTime)reader["DateSent"];
				//If dDateSent > DateAdd(DateInterval.Minute, -5, DateTime.Now) Then
				strMessage = (string)reader["Message"];
				blnSucess = true;
				//End If
			}
			reader.Close();
			cmd.Dispose();

			if (blnSucess)
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
				cmd.Parameters.AddWithValue("@SenderUserID", strToUserGUID);
				cmd.Parameters.AddWithValue("@RecipientUserID", strFromUserGUID);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();

		}
		return strMessage;
	}
	[WebMethod()]
	public string SendMessage(string strSenderUserID, string strRecipientUserID, string strMessage)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{

			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			cmd = conn.CreateCommand();
			cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@Message", strMessage);
			cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);

			cmd.ExecuteNonQuery();
			blnSucess = true;
			cmd.Dispose();
			conn.Close();
		}
		return blnSucess;
	}

	//ENQ = chr(5)                            # Request to send
	//EOT = chr(4)                            # Ready to receive
	//ACK = chr(6)                            # Correct reception
	//NAK = chr(21)                           # Incorrect reception
	//////////////////////////////////
	//// Sender init chat
	//////////////////////////////////
	//// Sender ENQ     Wait 4 ACK
	//// Recip  ACK ENQ Wait 4 ACK ACK
	//// Sender ACK ACK Wait 4 EOT
	//// Recip  EOT
	//////////////////////////////////
	//// Recip wait 4 chat
	//////////////////////////////////
	//// Recip  ACK ENQ Wait 4 ACK
	//// Sender ACK ACK Wait 4 EOT
	//// Recip  EOT

	[WebMethod()]
	public string CheckChatReq(string strMyUserID)
	{
		string strSenderUserID = null;
		string strMessage = null;
		DateTime dDateSent = DateTime.MinValue;
		strSenderUserID = "";
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			string strMyUserGUID = "";
			string strSenderUserGUID = "";
			MembershipUser MemUser = Membership.GetUser(HttpUtility.UrlDecode(strMyUserID));
			strMyUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = new SqlCommand("SELECT TOP(1) SenderUserID, Message, DateSent FROM [IMChats] WHERE ([RecipientUserID] = @RecipientUserID) ORDER BY DateSent DESC", conn);
			cmd.Parameters.AddWithValue("@RecipientUserID", strMyUserGUID);
			SqlDataReader reader = cmd.ExecuteReader();
			while (reader.Read())
			{
				dDateSent = (DateTime)reader["DateSent"];
				//If dDateSent > DateAdd(DateInterval.Minute, -5, DateTime.Now) Then
				strMessage = (string)reader["Message"];
				// ENQ
				if (strMessage == "~::::=[(HANDSHAKE)]=::::~[ENQ]")
				{
					strSenderUserGUID = reader["SenderUserID"].ToString();
					strSenderUserID = Membership.GetUser(new Guid(strSenderUserGUID)).UserName;
					//End If
				}
			}
			reader.Close();
			cmd.Dispose();

			if (! (string.IsNullOrEmpty(strSenderUserGUID)))
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
				cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
				cmd.Parameters.AddWithValue("@RecipientUserID", strMyUserGUID);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();

		}
		return strSenderUserID;
	}
	[WebMethod()]
	public bool SendChatReq(string strSenderUserID, string strRecipientUserID)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{

			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();
			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @RecipientUserID AND [RecipientUserID] = @SenderUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			cmd = conn.CreateCommand();
			cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			// ENQ
			cmd.Parameters.AddWithValue("@Message", "~::::=[(HANDSHAKE)]=::::~[ENQ]");
			cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);

			cmd.ExecuteNonQuery();
			blnSucess = true;
			cmd.Dispose();
			conn.Close();
		}
		return blnSucess;
	}
	[WebMethod()]
	public string ChatCleanUpAll(string strMyUserID)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			string strMyUserGUID = null;
			MembershipUser MemUser = Membership.GetUser(HttpUtility.UrlDecode(strMyUserID));
			strMyUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strMyUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();
			conn.Close();
			blnSucess = true;
		}
		return blnSucess;
	}
	[WebMethod()]
	public bool CleanUp(string strMyUserID, string strSenderUserID, bool blnSendEOT)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			string strMyUserGUID = null;
			MembershipUser MemUser = Membership.GetUser(HttpUtility.UrlDecode(strMyUserID));
			strMyUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strMyUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			if (blnSendEOT)
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
				cmd.Parameters.AddWithValue("@RecipientUserID", strSenderUserGUID);
				cmd.Parameters.AddWithValue("@SenderUserID", strMyUserGUID);
				// EOT
				cmd.Parameters.AddWithValue("@Message", "~::::=[(HANDSHAKE)]=::::~[EOT]");
				cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();
			blnSucess = true;

		}
		return blnSucess;

	}
	[WebMethod()]
	public bool SendNak(string strSenderUserID, string strRecipientUserID)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{

			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			cmd = conn.CreateCommand();
			cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			// NAK
			cmd.Parameters.AddWithValue("@Message", "~::::=[(HANDSHAKE)]=::::~[NAK]");
			cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);

			cmd.ExecuteNonQuery();
			blnSucess = true;
			cmd.Dispose();
			conn.Close();
		}
		return blnSucess;
	}
	[WebMethod()]
	public bool SendAck(string strSenderUserID, string strRecipientUserID)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{

			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			cmd = conn.CreateCommand();
			cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			// ACK
			cmd.Parameters.AddWithValue("@Message", "~::::=[(HANDSHAKE)]=::::~[ACK]");
			cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);

			cmd.ExecuteNonQuery();
			blnSucess = true;
			cmd.Dispose();
			conn.Close();
		}
		return blnSucess;
	}
	[WebMethod()]
	public bool GetAck(string strRecipientUserID, string strSenderUserID)
	{
		bool blnSucess = false;
		string strMessage = null;
		DateTime dDateSent = DateTime.MinValue;

		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = new SqlCommand("SELECT TOP(1) Message, DateSent FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID) ORDER BY DateSent DESC", conn);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			SqlDataReader reader = cmd.ExecuteReader();
			while (reader.Read())
			{
				dDateSent = (DateTime)reader["DateSent"];
				//If dDateSent > DateAdd(DateInterval.Minute, -5, DateTime.Now) Then
				strMessage = (string)reader["Message"];
				// ACK
				if (strMessage == "~::::=[(HANDSHAKE)]=::::~[ACK]")
				{
					blnSucess = true;
					//End If
				}
			}
			reader.Close();
			cmd.Dispose();

			if (blnSucess)
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
				cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
				cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();

		}
		return blnSucess;
	}
	[WebMethod()]
	public bool GetNak(string strRecipientUserID, string strSenderUserID)
	{
		bool blnSucess = false;
		string strMessage = null;
		DateTime dDateSent = DateTime.MinValue;

		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = new SqlCommand("SELECT TOP(1) Message, DateSent FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID) ORDER BY DateSent DESC", conn);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			SqlDataReader reader = cmd.ExecuteReader();
			while (reader.Read())
			{
				dDateSent = (DateTime)reader["DateSent"];
				//If dDateSent > DateAdd(DateInterval.Minute, -5, DateTime.Now) Then
				strMessage = (string)reader["Message"];
				// NAK
				if (strMessage == "~::::=[(HANDSHAKE)]=::::~[NAK]")
				{
					blnSucess = true;
					//End If
				}
			}
			reader.Close();
			cmd.Dispose();

			if (blnSucess)
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
				cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
				cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();

		}
		return blnSucess;
	}
	[WebMethod()]
	public bool SendEot(string strSenderUserID, string strRecipientUserID)
	{
		bool blnSucess = false;
		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{

			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = conn.CreateCommand();
			cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @RecipientUserID AND [RecipientUserID] = @SenderUserID)";
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.ExecuteNonQuery();
			cmd.Dispose();

			cmd = conn.CreateCommand();
			cmd.CommandText = "INSERT INTO IMChats(RecipientUserID, SenderUserID, Message, DateSent) VALUES (@RecipientUserID, @SenderUserID, @Message, @DateSent)";
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			// EOT
			cmd.Parameters.AddWithValue("@Message", "~::::=[(HANDSHAKE)]=::::~[EOT]");
			cmd.Parameters.AddWithValue("@DateSent", DateTime.Now);

			cmd.ExecuteNonQuery();
			blnSucess = true;
			cmd.Dispose();
			conn.Close();
		}
		return blnSucess;
	}
	[WebMethod()]
	public bool GetEot(string strRecipientUserID, string strSenderUserID)
	{
		bool blnSucess = false;
		string strMessage = null;
		DateTime dDateSent = DateTime.MinValue;

		using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
		{
			conn.Open();

			SqlCommand cmd = null;

			MembershipUser MemUser = null;
			string strRecipientUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strRecipientUserID));
			strRecipientUserGUID = MemUser.ProviderUserKey.ToString();
			string strSenderUserGUID = null;
			MemUser = Membership.GetUser(HttpUtility.UrlDecode(strSenderUserID));
			strSenderUserGUID = MemUser.ProviderUserKey.ToString();

			cmd = new SqlCommand("SELECT TOP(1) Message, DateSent FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID) ORDER BY DateSent DESC", conn);
			cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
			cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
			SqlDataReader reader = cmd.ExecuteReader();
			while (reader.Read())
			{
				dDateSent = (DateTime)reader["DateSent"];
				//If dDateSent > DateAdd(DateInterval.Minute, -5, DateTime.Now) Then
				strMessage = (string)reader["Message"];
				// EOT
				if (strMessage == "~::::=[(HANDSHAKE)]=::::~[EOT]")
				{
					blnSucess = true;
					//End If
				}
			}
			reader.Close();
			cmd.Dispose();

			if (blnSucess)
			{
				cmd = conn.CreateCommand();
				cmd.CommandText = "DELETE FROM [IMChats] WHERE ([SenderUserID] = @SenderUserID AND [RecipientUserID] = @RecipientUserID)";
				cmd.Parameters.AddWithValue("@SenderUserID", strSenderUserGUID);
				cmd.Parameters.AddWithValue("@RecipientUserID", strRecipientUserGUID);
				cmd.ExecuteNonQuery();
				cmd.Dispose();
			}
			conn.Close();

		}
		return blnSucess;
	}

}




在上面的代码中,错误是无法将类型bool隐式转换为字符串




in the code above the error is cannot implicitly convert type bool to string

推荐答案

然后显式执行:

字符串MyString = Convert.ToString(bool MyBoolean);

请参阅此处: http://msdn.microsoft.com/en-us/library/t0dd78t1.aspx [^ ]

而且在将来,如果您只发布引起问题的代码块而不是整个应用程序,那将很有帮助.您也可以使用Bold或Italics标记突出显示导致错误的特定行.
Then do it explicitly:

string MyString = Convert.ToString(bool MyBoolean);

See here: http://msdn.microsoft.com/en-us/library/t0dd78t1.aspx[^]

And in the future it would be helpful if you''d post only the block of code that is causing a problem, rather than your entire application. You might also use the Bold or Italics tags to highlight the specific line that is causing the error.


很可能,您已经忘记了"="并写成

Most likely, you''ve forgotten a "=" and written

if (foo = bar)



代替



instead of

if (foo == bar)



但是我真的很烦透阅读整个代码以尝试发现问题.

但是可以肯定的是,编译器会告诉您问题出在哪一行...



But I really can be bothered reading through the whole code trying to find the problem.

But surely the compiler will tell you in what line the problem is...


错误返回blnSucess第107和258行
the error is in return blnSucess line no.107 and 258


这篇关于在上面的代码中,错误是无法将布尔类型隐式转换为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆