0

仮想ボックス Debian OS で実行されている Java サーバーがあります。

とにかく、サーバー側で WSDL ファイルが作成され、Visual Studio から Web サービスを使用しています。サービスが検出され、このサービス参照を追加していますが、ビルドしようとすると次のエラーが発生します。

「WindowsFormsApplication2.Properties.Settings」には「WindowsFormsApplication2_TravelAgency_TravelBooking」の定義が含まれておらず、タイプ「WindowsFormsApplication2.Properties.Settings」の最初の引数を受け入れる拡張メソッド「WindowsFormsApplication2_TravelAgency_TravelBooking」が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか? ?) C:\Users\Me\Documents\Projects\WindowsFormsApplication2\WindowsFormsApplication2\Web References\TravelAgency\Reference.cs 42

これは、次の内容に関連していReference.csます。

this.Url = global::WindowsFormsApplication2.Properties.Settings.Default.WindowsFormsApplication2_TravelAgency_TravelBooking;

WindowsFormsApplication2_TravelAgency_TravelBooking赤で下線が引かれています。

何が起こったのかわからないので、必要なすべての情報を追加します。他に何を追加すればよいかわかりません。

編集:

私が持っているすべてのコードは次のとおりです

Program.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace WindowsFormsApplication2
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}

そしてForm1.csそしてForm1.cs[Design]

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WindowsFormsApplication2.TravelAgency;

namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            TravelBooking tb = new TravelBooking();

        }
    }
}

編集:

Netbeans でこれを行い、(テストするためだけに) Java Gui を作成すると、正常に動作し、うまく機能します。これが、生成されたコードに関係があると私が信じる理由です

4

1 に答える 1

0

問題は動的 URL にあります。App.config に URL が設定されていない場合、そのエラーが発生します。ここでは、値を追加して静的から動的に変更する方法について説明します。次のコードを示します。どちらの場合も生成されます。URL が動的に設定されている場合、自動生成されたコードは App.config を介してSystem.Configuration.ConfigurationSettings.AppSettings、または新しいバージョンではアプリケーション プロパティから取得しようとします (これはさらに悪いことです)。例外がない場合、生成されたコードは null をチェックしますが、例外をキャッチしません。

これを自分で確認し、URL を動的に変更して、生成されたコードを確認できます。後で URL を変更する必要がない場合の簡単な解決策は、静的に設定することです。別の解決策は、App.config にエントリを作成するか、.NET 4+ のプロジェクトにプロパティを作成することです。

お役に立てれば

于 2013-07-19T14:43:37.890 に答える