添加不能正确生成的服务引用

本文关键字:服务 引用 不能 添加 | 更新日期: 2023-09-27 17:50:53

我有一个Java服务器,它运行在一个虚拟的Debian操作系统上,

无论如何,WSDL文件是在服务器端创建的,并且从Visual Studio我正在使用web服务。服务被发现,我正在添加这个服务引用,然而,当我尝试构建时,我得到这个错误:

WindowsFormsApplication2.Properties。"设置"不包含的定义'WindowsFormsApplication2_TravelAgency_TravelBooking',没有扩展名方法'WindowsFormsApplication2_TravelAgency_TravelBooking'接受类型的第一个参数"WindowsFormsApplication2.Properties。可以找到"设置"缺少using指令或程序集参考?)C:'Users'Me'Documents'Projects' WindowsFormsApplication2 ' WindowsFormsApplication2 ' Web引用' 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.csForm1.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(只是为了测试),它工作得很好,工作得很好。这就是为什么我认为它与生成的代码有关

添加不能正确生成的服务引用

问题是动态URL,当你没有在App.config中设置URL时,它会给你这个错误,这里有一个关于如何将其从静态更改为带有附加值的动态的解释,它显示了在两种情况下生成的代码,当URL设置为动态时,自动生成的代码将尝试通过System.Configuration.ConfigurationSettings.AppSettings从App.config中获取它,或者在较新的版本中,从应用程序属性(这甚至更糟),如果你没有它,你会得到异常,生成的代码检查null,但不会捕获异常。

您可以自己验证,将URL更改为Dynamic并检查生成的代码。一个简单的解决方案是,如果你以后不需要更改URL,将其设置为Static,另一个解决方案是在App.config中创建条目,或者在.NET 4+

项目中创建该属性。

希望能有所帮助