2011-07-22 29 views
0

私は、sybase sql 11からSQL Server 2008 R2 ExpressにWebアプリケーションデータベースを移行しました.WCFサービスをコンパイルしようとしたときに、SQLサーバーとのインターフェイスがあります。複数のエラーが発生し、私のデータベースがsybaseだったとき、この問題は見たことがありません。ここで無効な引数エラー

Error 5 The best overloaded method match for 
'GlobeMailServiceLibrary.GMDatabaseService.KioskDataSetTableAdapters.Kiosk.CreateFolder(int?, 
string, bool?, bool?, ref int?)' has some invalid arguments 
C:\WebMailDev\Code\GlobeMailServiceLibrary\GMDatabaseService\GMDatabaseService.40 
13 GlobeMailServiceLibrary 

は、ストアドプロシージャが呼び出され、実行された場所からWCFサービスメソッドである: - :私は設定をコメントアウト

create procedure dbo.CreateFolder(@v_userID integer,@v_foldername varchar(512),@v_IsUserDefined 
            bit,@v_IsOutGoing bit,@v_folderID integer Output) 
    AS 
    begin 
     --set option MAX_STATEMENT_COUNT = 0; 
     --set option MAX_CURSOR_COUNT = 0; 
     insert into GCK_Folder(Foldername,IsUserDefined,IsOutGoing,UserID) values( 
           @v_foldername,@v_IsUserDefined,@v_IsOutGoing,@v_userID) ; 
     set @v_folderID = @@IDENTITY 
end 
go 

- ここ

private int CreateFolder(int iUser, string strFolder, bool bUserCreate, bool bOutgoing) 
    { 
     int iFolder; 
     DBEncoder.EncodeObject(ref strFolder); 
     KioskAdapter.CreateFolder(iUser, strFolder, bUserCreate, bOutgoing, out 
            iFolder);    
     return iFolder; 
    } 

は、ストアドプロシージャの定義でありますOPTION MAX_STATEMENT_COUUNTとMAX_CURSON_COUNTは、SQL Server 2008 R2 ExpressのSybaseと同等のコマンドが分かりません。

+4

hmm ...例外は、問題が 'CreateUser'にあることを伝えています。だから、あなたが探し始めなければならないかもしれません。言い換えれば、私は 'CreateFolder'がここでの問題ではないと思います。 –

+0

これは純粋なC#の質問であり、WCF、SQL ServerまたはASP.NETとは関係ありません。 –

+4

あなたは 'CreateUser'にコードを投稿する必要があります。 – doctorless

答えて

0

最後のパラメータではGlobeMailServiceLibrary.GMDatabaseService.KioskDataSetTableAdapters.Kiosk.CreateFolderにはref int?があり、代わりにoutパラメータを渡していますが、これは必要な署名と一致しません。