Project Server Console 应用程序错误: 类型“ProjectServer.WebSvcLoginW

本文关键字:类型 ProjectServer WebSvcLoginW 错误 Server Console 应用程序 Project | 更新日期: 2023-09-27 18:30:25

我不知道如何摆脱这个错误。我对 C# 很陌生,但请提供任何可能的帮助。谢谢

错误:类型"ProjectServer.WebSvcLoginWindows"中不存在类型名称"LoginWindows"

源代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Configuration;
using ProjectServer.LoginForms;
using ProjectServer.Statusing;
using ProjectServer;
using System.Net;
using System.Threading;
using PSLibrary = Microsoft.Office.Project.Server.Library;
using System.Windows.Forms.MessageBox;
using System.Windows.Forms;
namespace ProjectServer
{
    public partial class LogonProjectServer : Form
    {
        public static WebSvcLoginWindows.LoginWindows loginWindows =
            new WebSvcLoginWindows.LoginWindows();
        public static CookieContainer cookies = new CookieContainer();
        public static WebSvcProject.LoginForms loginForms =
            new SyprisProjectServer.WebSvcProject.LoginForms();
        private const string LOGINFORMSWEBSERVICE = "/PWA/_vti_bin/PSI/LoginForms.asmx?wsdl";
        private const string LOGINWINDOWSWEBSERVICE = "/PWA/_vti_bin/PSI/LoginWindows.asmx?wsdl";
        private string baseUrl; // Example: http://ServerName/ProjectServer/
        public bool LogonPS(bool useWinLogon, string baseUrl, 
        string userName, string password)
    {
        const string LOGINWINDOWS = "PWA/_vti_bin/PSI/LoginWindows.asmx?wsdl";
        const string LOGINFORMS = "PWA/_vti_bin/PSI/LoginForms.asmx?wsdl";
        bool logonSucceeded = false;
        try
        {
            if (useWinLogon)
            {
                loginWindows.Url = baseUrl + LOGINWINDOWS;
                loginWindows.Credentials = CredentialCache.DefaultCredentials;
                if (loginWindows.Login()) logonSucceeded = true;
            }
        }
        // Catch statements
        catch (System.Web.Services.Protocols.SoapException ex)
        {
            MessageBox.Show(ex.Message.ToString(), "Logon Error", 
            MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        catch (System.Net.WebException ex)
        {
            MessageBox.Show(ex.Message.ToString(), "Logon Error", 
            MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        return logonSucceeded;
    }  
    }

}

Project Server Console 应用程序错误: 类型“ProjectServer.WebSvcLoginW

此问题可能是由于创建loginWindows变量时类名(LoginWindows)或命名空间(WebSvcLoginWindows)不正确:

public static WebSvcLoginWindows.LoginWindows loginWindows = new WebSvcLoginWindows.LoginWindows();

确保命名空间和类名拼写正确且大小写正确。

如果类包含在单独的程序集中,请确保 winforms 项目具有对其他程序集的引用。

希望有帮助。

检查您的构建配置,并确保所有引用的项目都在构建和构建正确的配置(64 位与 32 位)。 此外,请确保使用任何引用的 dll 的正确版本。