添加服务引用未正确生成Reference.cs

时间:2013-01-07 21:25:54

标签: c# web-services wsdl

我有一个在Debian OS虚拟机上运行的Java Server,

无论如何,在服务器端创建WSDL文件,从Visual Studio创建我正在使用Web服务。该服务被发现,我正在添加此服务引用,但是,当我尝试构建时,我收到此错误:

  

'WindowsFormsApplication2.Properties.Settings'没有   包含的定义   'WindowsFormsApplication2_TravelAgency_TravelBooking'并没有扩展名   方法'WindowsFormsApplication2_TravelAgency_TravelBooking'接受   类型的第一个参数   可以找到'WindowsFormsApplication2.Properties.Settings'(是吗?   缺少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(只是为了测试)它工作正常并且工作得很好。所以这就是为什么我认为这与生成的代码

有关

1 个答案:

答案 0 :(得分:0)

问题在于动态网址,当您在App.config中没有设置网址时,它会为您提供该错误,以下是如何将其从静态更改为动态且添加了值的说明,它显示在两种情况下生成的代码,当URL设置为动态时,自动生成的代码将尝试通过System.Configuration.ConfigurationSettings.AppSettings从App.config获取,或者在较新版本中从Application属性获取(更糟糕的是)如果你没有它,你可以在哪里获得异常,生成的代码检查空值但不捕获异常。

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

希望这有帮助