Моя страница использует GridView для отображения всех клиентов пользователю после того, как он или она войдут в систему. Однако я пытаюсь заставить GridView показывать только тех клиентов, которые принадлежат соответствующему пользователю.Недопустимый литой от «System.String» до «System.Guid»
... код позади:
String strConnString = ConfigurationManager
.ConnectionStrings["BA_2013ConnectionString"].ConnectionString;
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "getClients";
cmd.Parameters
.Add("@UserId", SqlDbType.UniqueIdentifier)
.Value = txtUserId.Text.ToString();
cmd.Connection = con;
con.Open();
gvClients.DataSource = cmd.ExecuteReader();
gvClients.DataBind();
con.Close();
con.Dispose();
... хранимая процедура:
ALTER PROCEDURE dbo.getClients
@UserId uniqueidentifier
AS
BEGIN
SELECT ClientId, UserId, ClientName, EmailAddress, PhoneNumber, ServicesNum
FROM Client_tb
WHERE UserId = @UserId
END
когда я запускаю страницу, я получаю ошибку: Invalid литая из «System.String 'to' System.Guid ... Могу ли я помочь с этим, пожалуйста?
Заявление об ошибке кажется довольно ясным. Вам нужно преобразовать строку в Guid. К счастью, у него есть [конструктор для этого] (http://msdn.microsoft.com/en-us/library/96ff78dc (v = vs.110) .aspx). – mason