2

Sharepointアプリケーションに問題があります。通常のプロジェクトとしてプログラミングを開始しましたが、今ではSharepointアプリケーションに「移動」するのが好きです。私のアプリには2つのプロジェクトがあります。1つはSharePointの実際のプロジェクトで、もう1つにはクラスが含まれています。私はclasses-projectに署名しました。これには強い名前があり、参照されています。これまでのところ良い…しかし今、クラス内のパブリックメソッドにアクセスできなくなるという問題があります。したがって、クラスをインスタンス化する場合:

var myName = new ClassName();

後でアクセスしてみてください。例:

myName.Size = 20;

「サイズ」は「シンボルを解決できません」というエラーで赤くマークされます。しかし、すべてをSharePointアプリに入れる前は、問題なく機能しました。私は上下にグーゲルしましたが、この問題の解決策を見つけることができませんでした。

誰かがこの問題を知っていますか?

アップデート:

これはメインプロジェクトの私のコードです:

protected override void CreateChildControls()
{
  ...

  HPlaner hp = new HPlaner();
  hp.Entries.Add(new HPlanerEntry("Micky Mouse", new DateTime(2012, 12, 24), new DateTime(2013, 1, 13)));

  hp.Scale = 2;
  hp.Year = year;
  hp.Summary = true;
  this.Controls.Add(hp);
}

これはクラスです:

public class HPlaner : WebControl
{
  private List<HPlanerEntry> _Entries;
  public List<HPlanerEntry> Entries
  {
    get
    {
      if (_Entries == null)
      {
        _Entries = new List<HPlanerEntry>();
      }

      return _Entries;
    }
  }

  public bool Summary { get; set; }
  public int Scale { get; set; }
  public int DayCount { get; set; }
  public int UserCount { get; set; }
  public int Year { get; set; }
  public string[,] UserList { get; set; }

  ... (myMethods)

}
4

2 に答える 2

0

申し訳ありませんが、答えは簡単でした!通常のプロジェクトのメインクラスは_Defaultで、SharpointApplicationHPlanerでは他のクラスと同じ名前です。クラス名が私のリストに含まれていなかったので、これを見ることができませんでした。そのような「小さな」ことはどれほど時間がかかることができますか!

于 2012-06-07T20:16:19.690 に答える
0

私の推測では、あなたのコードはx86アーキテクチャをターゲットにして書かれていますが、SharePointコードは64ビットをターゲットにしています。VSでプロジェクトを右クリックし、[プロパティ]->[ビルド]->[プラットフォームターゲット]を選択すると、コードの設定を変更できます。x64を選択して再コンパイルします。

于 2012-06-07T12:14:46.833 に答える