3

以下は、私が使用しているコードスニペットです。

using System;
using System.Collections.Generic;
using System.Text;

namespace businessTMS
{
    public class SignIn
    {
        public string authenticate(String UserName, String password)
        {  
            dataTMS.SignIn data = new dataTMS.SignIn();
          string authenticate=(string)data.authenticate(UserName, password);
            return authenticate;
        }

    }
}
4

3 に答える 3

18

この行が原因でエラーが発生しています:

string authenticate = (string)data.authenticate(UserName, password);

認証を、ブール値を返す真/偽の計算に等しく設定しています。代わりにこれを試してください。

string authenticate = data.authenticate(UserName, password).ToString();

次のようにして、文字列を返すようにコードを変更することもできます。

bool authenticate = data.authenticate(UserName, password);
return authenticate.ToString();

優先オプション:
さらに、なぜ true/false (bool) の文字列表現を返すのかわかりません...それが私の関数であれば、おそらくこれを返すでしょう:

return data.authenticate(UserName, password);

Preferred OPTION 領域で単純にブール値を返すことを強くお勧めします。これを文字列形式にしておく明確な理由はありません。

于 2009-07-15T05:03:38.257 に答える
2

次のように Boolean.ToString メソッド (ドキュメントはここにあります) を使用します。

using System;
using System.Collections.Generic;
using System.Text;

namespace businessTMS
{
    public class SignIn
    {
        public string authenticate(String UserName, String password)
        {  
            dataTMS.SignIn data = new dataTMS.SignIn();

            return data.authenticate(UserName, password).ToString();
        }

    }
}
于 2009-07-15T05:04:51.420 に答える