2017-03-13 83 views
2

我在C#编写的程序与管理平台阿比我只能通过管理平台C#PROGRAMM

var manager = new RedmineManager("http://srvredmine/login", username, password); 

登录,如果我用简单的任务,像

var user = manager.GetCurrentUser(); 
Console.WriteLine(user); 

我得到在redmine-net45-api.dll中发生NotFoundException


我改成了RedmineWebClient,因为它对我更好。例如,我想下载一个Wiki页面,然后我用 MessageBox.Show(manager.DownloadString("http://srvredmine/projects/sports").ToString()); 而对于登陆我用

NetworkCredential credentials = new NetworkCredential(username, password, "http://srvredmine/login/"); RedmineWebClient manager = new RedmineWebClient(); manager.BaseAddress = "http://srvredmine/"; manager.Credentials = credentials;

但在MessageBox我只得到了登录页面的字符串。

回答

1

刚问过一个开发人员。 Redmine版本太旧而无法使用RedmineManager,而RedmineWebClient对我来说并不是那么有用。

1

尝试从您传递给RedmineManager()构造函数的url中删除“login”。

var manager = new RedmineManager("http://srvredmine/", username, password); 

该API期望基地址到服务器,而不是特定的功能。

+0

我已经试过了,但我也得到一个异常 'code' Redmine.Net.Api.RedmineException |附加信息:未找到 –

+0

那么,我们需要更多信息。有关错误的详细信息,包括调用堆栈。是否真的有一个最新版本的Redmine安装在http:// srvredmine?当您在浏览器中打开“http:// srvredmine/users/current.xml”时会发生什么? – NineBerry

+0

我尝试了一下RedmineWebClient,但我不能登录,但我可以为你的RedmineWebClient的一些功能。 如果我使用[链接](http://srvredmine/users/current.xml)它说没有找到404页。 好吧,有错误。 –