-1

Xamarin Studio IDE 内の MonoTouch で現在開発中の 2 つのプロジェクトがあります。AC# ポータブル ライブラリ プロジェクトです。これは、JSON を使用してサーバーとの間で要求を行い、応答を処理するためのラッパー クラスとして使用します。私の 2 番目のプロジェクトは、現在、開発中の最初のプロジェクトをテストするために使用している単純な C# コンソール ベースのアプリケーションです。最終的には 2 番目のプロジェクトを削除し、ラッパー クラスを利用する iOS アプリ用に新しいプロジェクトを作成します。

しかし、奇妙な理由で最初から立ち往生しています。HttpWebRequest クラスを使用して HTTP Web 要求を作成する方法に関するこのチュートリアルに従っています: http://docs.xamarin.com/guides/cross-platform/application_fundamentals/introduction_to_web_services#2.1.1.using-httpwebrequest

プロトタイピング用のラッパー クラス コンストラクター内で、デモのコードの 1 行目 (まあ、2 行目) だけを書きました。

using System;
using System.Net;

namespace MyWebApp
{
    public class MyWebAppClient
    {
        private string Password { get; set; }
        private string Username { get; set; }

        public MyWebAppClient (string Username, string Password)
        {
            this.Username = Username;
            this.Password = Password;
            var request = HttpWebRequest.Create (new Uri("http://google.com/"));
        }
    }
}

そして、私の非常に単純なテキスト プロジェクト:

using System;
using MyWebApp;

namespace MyTest
{
    class MainClass
    {

        public static void Main (string[] args)
        {
            MyWebAppClient client = new MyWebAppClient("username","password");
        }
    }
}

テスト プロジェクトを実行すると、次の例外が発生します。

System.IO.FileNotFoundException: Could not load file or assembly 'System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' or one of its dependencies.
  at ASDFTest.MainClass.Main (System.String[] args) [0x00000] in /Users/William/BitBucket/ASDFiOS/ASDFiOS/ASDFTest/Program.cs:11

他のプロジェクト (HttpWebRequest オブジェクトが作成される場所) のコンストラクター内でその 1 行を削除すると、例外はなくなります。

誰がこれを引き起こしているのか知っていますか? 私はここで完全に困惑しており、MonoTouch は初めてです。

4

1 に答える 1

0

さらに調査すると、PCL (MyWebApp 名前空間が存在する場所) の使用は完全にはサポートされていないようです ( http://forums.xamarin.com/discussion/28/challenges-thoughts-loves#latest )。ちょっと残念ですが、ハッキングすれば可能だと思いますが、私のプロジェクトのために、今のところ、解決策を 1 つのプロジェクトに限定することにします。

于 2013-04-03T13:46:09.660 に答える