//Retrieve data to display
string queryString2 = "SELECT [ConfidenceLevel], [LoveLevel], [StressLevel] FROM [UserData] WHERE ([UserProfileID] = @UserProfileID) ORDER BY [DateTime] ASC";
SqlCommand CommandSelect = new SqlCommand(queryString2, database.Connection);
//add parameters. used to prevent sql injection
CommandSelect.Parameters.Add("@UserProfileID", SqlDbType.UniqueIdentifier);
CommandSelect.Parameters["@UserProfileID"].Value = Membership.GetUser().ProviderUserKey;
所以在最后,我不想使用“Membership.GetUser()。ProviderUserKey”,而是使用动态成员ID,我只能使用GET名称值对中的字符串。
即。 - string id =“a051fc1b-4f51-485b-a07d-0f378528974e”
如何将此字符串分配给分配值的最后一个SQL参数行?输入吗?
如果我只是给它分配字符串我收到错误:
从'System.String'转换为无效 '的System.Guid'。
谢谢。
答案 0 :(得分:4)
CommandSelect.Parameters["@UserProfileID"].Value =
new Guid(ship.GetUser().ProviderUserKey);
答案 1 :(得分:2)
请参阅System.Guid的文档。在那里你会找到一个构造函数,它接受一个字符串值,并创建一个Guid结构。