小编Mat*_*gan的帖子

Web服务调用中的"模拟"会话

我正在尝试编写一个返回会话变量的Web服务.调用此Web服务的应用程序可以访问当前会话的会话ID.

我尝试通过创建一个"ASPNet_SessionID"cookie,然后将其作为代理类的cookie容器设置为Web服务,但这不起作用.我是这样做的,

 protected void CallService(string sessionID)
    {
        localhost.AuthService auths = new localhost.AuthService(); //Service Proxy class
        System.Net.CookieContainer cookieJar = new System.Net.CookieContainer();


        System.Net.Cookie newCookie = new System.Net.Cookie("ASPNet_SessionID", sessionID);
        newCookie.Domain = "http://localhost";
        cookieJar.Add(newCookie);
        auths.CookieContainer = cookieJar;


        string SessionData = auths.GetSessionData();
Run Code Online (Sandbox Code Playgroud)

GetSessionData Web方法只返回Session数据,如下所示:

[WebMethod(EnableSession=true)]
public string GetSessionData(string sessionID) {return ((string)Session["user"]);}
Run Code Online (Sandbox Code Playgroud)

这种方法应该有效吗,还是我做错了什么?

UPD:此链接实际上解决了我的问题 - 我能够访问所有会话InProc并能够通过ID选择正确的会话:

http://weblogs.asp.net/imranbaloch/archive/2010/04/05/reading-all-users-session.aspx

c# asp.net session session-cookies

7
推荐指数
1
解决办法
981
查看次数

如何为每个构建使用Jenkins s3发布插件到同一位置?

我正在使用Jenkins构建我的应用程序,然后我需要将其发布到s3.其中一个输出是一个安装exe文件,然后我将其作为链接提供给应用程序的用户.因此,我需要此安装程序文件始终位于同一位置,对于每个构建.但是,无论我如何设置我的S3 Publishing构建后步骤,工件都会上传到每个构建的单独文件夹中,如此 s3结构

有没有办法让我每次都将发布设置到目录/存储桶的根目录,如果需要则覆盖旧文件?这将消除jobs/TestTrayApp/{buildnumber}目录.这是我的s3发布后构建步骤设置:

在此输入图像描述

c# amazon-s3 jenkins jenkins-plugins

7
推荐指数
1
解决办法
519
查看次数

Kendo Grid导出到Excel - 所有页面都不起作用

我有一个可分页和可过滤的网格,我设置为使用新的Kendo Grid Excel功能导出到excel.但是,即使我将AllPages设置为true,我也只得到前10个结果,无论我将pagesize设置为什么.删除Pageable属性给了我完整的结果.其他人有这个问题吗?

这是我网格的设置.

@(Html.Kendo().Grid(Model.CloudUsage)
.Name("PCloudUsages")
.ToolBar(toolbar =>
{
    toolbar.Excel().HtmlAttributes(new { @class = "toolbar-field" });
})
.Columns(columns =>
{
    columns.Bound(c => c.ProjectCode).Filterable(ftb => ftb.Cell(cell => cell.Operator("contains").ShowOperators(false)));
    columns.Bound(c => c.ProjectName).Title("ProjectName").Filterable(ftb => ftb.Cell(cell => cell.Operator("contains").ShowOperators(false)));
})
.Pageable(p => p.ButtonCount(5).PageSizes(new int[] { 10, 20, 50, 100 }))
.Filterable(ftb => ftb.Mode(GridFilterMode.Row))
.Sortable()
.Excel(excel => excel.FileName("CloudUsages.xlsx").Filterable(true).ProxyURL(Url.Action("ExportExcel", "Admin")).AllPages(true))
.DataSource(source => source
    .Ajax()
     .Model(m => m.Id(itm => itm.ProjectName))
     .Read(read => read.Action("PCloudUsages_Read", "Admin").Data("GetDates"))
     .Sort(sort => sort.Add(itm => itm.ProjectName).Descending())
     )
)
Run Code Online (Sandbox Code Playgroud)

和控制器方法

public ActionResult ExportExcel(string contentType, string base64, string …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc razor kendo-ui kendo-grid kendo-asp.net-mvc

6
推荐指数
2
解决办法
1万
查看次数

Membership.CreateUser适用于多个会员提供商

我在一个站点上处理多个成员提供商时遇到问题.

我有一个注册页面,用于创建用户并将其添加到AD域.在我有一个会员提供者之前,我打过电话

Membership.CreateUser(txtUsername.Text, txtPassword.Text) 
Run Code Online (Sandbox Code Playgroud)

根据页面上的用户输入创建用户名.

但是,我在web.config中添加了另一个成员资格提供程序,以便可以使用登录页面从另一个AD登录.现在,我的注册页面不起作用,因为(我假设)有两个会员提供商?

我怎样才能解决这个问题?如何在调用Membership.CreateUser时指定要使用的提供程序?

谢谢.

编辑:

如下所述,正确的方法是:

MembershipCreateStatus newStatus = new MembershipCreateStatus();    
Membership.Providers["ProviderName"].CreateUser(txtUserName.Text, txtPassword.Text, null, null, null, true,null, out newStatus);
Run Code Online (Sandbox Code Playgroud)

谢谢!

c# asp.net asp.net-membership membership-provider

4
推荐指数
1
解决办法
3404
查看次数

c# Parallel For 循环,具有分钟延迟

我有一个非常简单的 for 循环,看起来像这样

for(int i = 0; i< 26; i++)
{
    DoSomething(i);
}
Run Code Online (Sandbox Code Playgroud)

DoSomething 函数大约需要大约 3 分钟才能执行。我想编写一个 for 循环,每分钟调用一次 DoSomething() 而不等待前一个调用完成。我试图做这样的事情:

Parallel.For(0, 26, i =>
{
    DoSomething(i);
    System.Threading.Thread.Sleep(60000);
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为它首先调用然后睡眠。颠倒这些步骤还意味着 DoSomething 方法在每次调用之间立即调用 fire。我如何设置它以便每分钟都调用 DoSomething?

谢谢!

c# task-parallel-library parallel.foreach parallel.for

2
推荐指数
1
解决办法
3219
查看次数