3

Windows フォームでは、次のコードを使用して「Authentication.cs」というクラス ファイルを作成できます。

public class Authentication
{
    public string Name;

    internal bool Authenticate()
    {
        bool i = false;
        if (Name == "Jason")
        {
            i = true;

        }
        return i;
    }
}

WebMatrix では、'Authentication.cs' という名前の新しいクラス ファイルを挿入し、上記のコードを挿入できます。

私の default.cshtml ファイルでは、次のようにします。

<body>
   @{
      Authentication auth = new Authentication();
      if(auth.Authenticated("jasonp"))
      {
         <p>@auth.Authenticated("jasonp");</p>
      }
   }
</body>

しかし、それはうまくいきません!WinForms デスクトップ アプリでは機能しますが、WebMatrix では機能しません。なぜ機能しないのかわかりません。エラーメッセージは次のとおりです。

「名前空間 Authenticate が存在しません。アセンブリなどを参照していますか?」

それで、私のdefault.cshtmlファイルの一番上で私はこれを試しました:

@using Authentication.cs;

まったく同じエラーが発生しました。

クラス ファイルを WebMatrix ページに "含める" 方法を説明しているドキュメントはどこにもありません。

どんな助けでも大歓迎です、

ありがとうございました!

4

3 に答える 3

2

ファイルではなく名前空間をインポートします。そう; 名前空間は何Authenticationですか?例えば:

@using My.Utils.Authentication.cs;

;また、かみそりの呼び出しにドロップしたい:

<p>@auth.Authenticated("jasonp")</p>

コードで完全修飾名を指定することもできます。

   @{
      var auth = new My.Utils.Authentication();
      if(auth.Authenticated("jasonp"))
      {
         <p>@auth.Authenticated("jasonp")</p>
      }
   }

(余談ですが、意図的に同じメソッドを同じ値で 2 回呼び出していますか?)

于 2011-03-17T11:21:18.340 に答える
1

cs ファイルを App_Code ディレクトリにドロップするだけです

次に、このようなことをします

    @{
      Authentication auth = new Authentication();
      if(auth.Authenticated("jasonp"))
      {
         <p>@auth.Authenticated("jasonp");</p>
      }
   }

using を追加する必要はありません。

さらに、.dll を使用する場合は、using が必要になります。

@using NameSpace.Authenication

@{
    Authenticated auth = new Authenicated();

 }

 @if(@auth.Authenticated("jasonp"))
 {
    <p>@auth.Authenticated("jasonp")</p>
 }
于 2011-03-17T17:55:54.477 に答える
0

linkRef.cs コードという名前のファイルを作成します。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;


public class linkRef
{
   public  linkRef() {
        //
        // TODO: Add constructor logic here   
    //
   }
}

App_code フォルダーに入れ、dot net 2012 で bin に公開し、bin フォルダーをアップロードします。

于 2013-01-28T18:14:54.620 に答える