私は、データベースにエンティティフレームワーク - データベース最初のストアドプロシージャからGUIDを返し
public Guid GetUserID(string userName)
{
using (var entities = new entities())
{
return Guid.Parse(entities.Database.SqlQuery<Guid>(
"dbo.[GetUserID] @UserName",
new Object[] { new SqlParameter("@UserName",
userName)
}).ToString());
}
}
そして、私のストアドプロシージャの既存しているストアド・プロシージャを呼び出します方法があります:私はいくつかを追加
CREATE PROCEDURE [dbo].[GetUserID]
@UserName NVARCHAR(100)
AS
BEGIN
SET NOCOUNT ON;
SELECT TOP 1 ID FROM [DBO].[USER] WHERE USERNAME = @UserName
ORDER BY CREATEDON DESC
END
GO
をログに次のエラーが表示される:
Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
at System.Guid.TryParseGuidWithNoStyle(String guidString, GuidResult& result)
at System.Guid.TryParseGuid(String g, GuidStyles flags, GuidResult& result)
at System.Guid.Parse(String input)
上記のエラーの原因は何ですか?
ありがとう。それが私の問題を解決しました。昨日から私の頭を壊して、実際の問題が何だったのか把握してください。 – Yoda