使用表单身份验证时,我无法在epm中使用PSI创建项目 [英] i can not use PSI create project in epm when using form authentication

查看:48
本文介绍了使用表单身份验证时,我无法在epm中使用PSI创建项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


      我有一个问题:我在使用表单身份验证时无法在epm中使用PSI创建项目?它在使用Windows身份验证时有效。


      我该怎么办?谢谢!


     我的代码:


ProjectWebSvc.Project projectSvc = new ProjectWebSvc.Project();


     ProjectSvc.Credentials = CredentialCache.DefaultCredentials;


    QueueSystemWebSvc.QueueSystem queueSystemSvc = new QueueSystemWebSvc.QueueSystem();


    QueueSystemSvc.Credentials = CredentialCache.DefaultCredentials;


       ProjectWebSvc.ProjectDataSet projectDs = new ProjectWebSvc.ProjectDataSet();


 


< p style ="margin:0cm 0cm 0pt"> &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; Guid ProjectUid = Guid.NewGuid();


 


  ;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; //创建项目。


<跨度风格=" 字体大小:小">&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP ;&NBSP;&NBSP; ProjectWebSvc.ProjectDataSet.ProjectRow
projectRow = projectDs.Project.NewProjectRow();


       &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; projectRow.PROJ_UID = ProjectUid;


              ;&NBSP;&NBSP; projectRow.PROJ_NAME =" PSI 创建测试项目 - "
+ txtProjectName.Text.Trim();


          &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; projectRow.PROJ_TYPE =(int)PSLib.Project.ProjectType.Project;


         &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;


<跨度风格=" 字体大小:小">&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP ;&NBSP;&NBSP; projectDs.Project.AddProjectRow(projectRow);


<跨度郎="EN-US "style ="font-family:'Arial Unicode MS','sans-serif'">  


&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; //将项目保存到数据库。


<跨度风格=" 字体大小:小">&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;&NBSP; Guid jobId = Guid.NewGuid();


<跨度风格=" 字体大小:小">&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; &NBSP;&NBSP;&NBSP;&NBSP;
projectSvc.QueueCreateProject(jobId,projectDs,false);    


<跨度风格=" 字体大小:小">&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP ;     this.psiWaitForQueue(queueSystemSvc,
jobId);


      ;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; btnImport.Text ="保存确定" ;;


 


&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; //发布项目


              &NBSP;&NBSP; Guid jobId2 = Guid.NewGuid();


            &NBSP;&NBSP;&NBSP;&NBSP; projectSvc.QueuePublish(jobId2,ProjectUid,
false,String.Empty);


       &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; this.psiWaitForQueue(queueSystemSvc,
jobId2);


peardong

解决方案

Hki peardong,


我认为问题出在WS登录上。


你的应用如何使用表单身份验证登录webservice ?


最好的问候,


Paolo O。


 


&NBSP;


hi,

       I have a question: i can not use PSI create project in epm when using form authentication ?! It works when using windows authentication.

       What should i do? Thanks!

      my code:

ProjectWebSvc.Project projectSvc = new ProjectWebSvc.Project();

    ProjectSvc.Credentials = CredentialCache.DefaultCredentials;

    QueueSystemWebSvc.QueueSystem queueSystemSvc = new QueueSystemWebSvc.QueueSystem();

    QueueSystemSvc.Credentials = CredentialCache.DefaultCredentials;

       ProjectWebSvc.ProjectDataSet projectDs = new ProjectWebSvc.ProjectDataSet();

 

       Guid ProjectUid = Guid.NewGuid();

 

                // Create the project.

                ProjectWebSvc.ProjectDataSet.ProjectRow projectRow = projectDs.Project.NewProjectRow();

                projectRow.PROJ_UID = ProjectUid;

                projectRow.PROJ_NAME = "PSI创建测试项目-" + txtProjectName.Text.Trim();

                projectRow.PROJ_TYPE = (int)PSLib.Project.ProjectType.Project;

              

                projectDs.Project.AddProjectRow(projectRow);

 

                // Save the project to the database.

                Guid jobId = Guid.NewGuid();

                projectSvc.QueueCreateProject(jobId, projectDs, false);    

                this.psiWaitForQueue(queueSystemSvc, jobId);

                btnImport.Text = "Save OK";

 

                // Publish the project

                Guid jobId2 = Guid.NewGuid();

                projectSvc.QueuePublish(jobId2, ProjectUid, false, String.Empty);

                this.psiWaitForQueue(queueSystemSvc, jobId2);


peardong

解决方案

Hki peardong,

i suppose that the problem is on login on WS.

How do your app login to webservice using form authentication?

Best Regards,

Paolo O.

 

 


这篇关于使用表单身份验证时,我无法在epm中使用PSI创建项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆