小编Chr*_*ris的帖子

如何将BitmapImage从内存保存到WPF C#中的文件中?

我找不到任何东西,需要一些帮助.我已经将一堆图像作为BitmapImage类型加载到内存中,这样我就可以删除它们存储的临时目录.我已经成功完成了这一部分.现在我需要将图像保存到不同的临时位置,我无法弄清楚如何执行此操作图像包含在:

Dictionary<string, BitmapImage>
Run Code Online (Sandbox Code Playgroud)

字符串是文件名.如何将此集合保存到新的临时位置?谢谢你的帮助!

c# wpf save bitmapimage

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

如何使用OWIN和使用ASP.NET MVC从ADFS返回的SAML票证进行登录?

我有一个拥有自己的登录屏幕的网站,用户在其中输入用户名和密码。按下登录按钮后,应该通过ADFS对用户进行身份验证,并且我应该获得SAML令牌。这可行。不过目前我不确定要登录的用户该怎么做,我不确定的原因是因为该网站有些曲折。就像我说过的那样,用户通过我们网站的登录页面通过ADFS登录。但是,如果用户访问了未经授权的页面,而不是将用户重定向到我们的登录页面,则需要将用户重定向到我们的ADFS登录页面。我以这种方式开始了整个项目。用户通过ADFS的登录页面进行身份验证。只需通过如下设置我的ConfigureAuth方法(在StartupAuth.cs中)即可完成:

public void ConfigureAuth(IAppBuilder app)
{
    app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);

    app.UseCookieAuthentication(new CookieAuthenticationOptions());

    app.UseWsFederationAuthentication(
        new WsFederationAuthenticationOptions
        {
            Wtrealm = realm,
            MetadataAddress = adfsMetadata
        });
}
Run Code Online (Sandbox Code Playgroud)

很简单!如果我尝试转到某个[Authorized]页面,它将带我进入ADFS登录页面。之后,是时候尝试其他登录方法了(通过使用登录页面通过ADFS进行身份验证)。请记住,尝试进行身份验证的任何一种方式仍在使用相同的ADFS进行身份验证。一个正在使用ADFS的登录页面,另一个正在使用自定义登录页面。因此,我使用一个简单的小表单来创建自定义登录页面以进行登录:

<form action="@Url.Action("SignIn", "Account")" method="post">
    <input type="text" name="username" />
    <input type="password" name="password" />
    <input type="submit" value="Login" />
</form>
Run Code Online (Sandbox Code Playgroud)

这样很好。按下提交按钮后,它将尝试登录操作。登录操作如下所示:

[HttpPost]
public ActionResult SignIn(string username, string password)
{
    if (!Request.IsAuthenticated)
    {
        const string _relyingPartyUri = "https://myrelayingparty/";
        const string _serverName = "myservername";
        const string certSubject = "CN=mycertsubject";
        string endpointUri = string.Format("https://{0}/adfs/services/trust/13/usernamemixed", _serverName);

        var factory = new WSTrustChannelFactory(new UserNameWSTrustBinding(), endpointUri) …
Run Code Online (Sandbox Code Playgroud)

c# authentication asp.net-mvc claims-based-identity owin-middleware

5
推荐指数
0
解决办法
921
查看次数

仅当用户被授权查看该页面时,如何显示链接到该页面的按钮?ASP.NET MVC

我有一个 ASP.NET MVC 项目。在这个项目中,用户可以登录我的网站。所有登录的用户都会进入同一页面的登录页面。我的网站有一个单独的部分,仅针对某些用户进行划分。这是在 Web.config 中通过以下内容定义的:

<location path="SectionedOff">
  <system.web>
    <authorization>
      <allow users="user1,user2,user3" />
      <deny users="*" />
    </authorization>
  </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

如果用户已获得此部分的授权,我想在页面上显示一个按钮,每个人在登录时都会重定向到该按钮。这是我想要完成的任务的粗略绘图: 图像 我已经完成了身份验证和适当的授权,我只是不确定如何根据用户是否获得网站单独部分的授权来显示和隐藏此按钮。我隐隐怀疑我必须读取 Web.config 文件才能获取此信息,但是,我不知道如何读取 Web.config 中某个位置的信息。任何帮助,将不胜感激 :)

asp.net asp.net-mvc authorization

3
推荐指数
1
解决办法
2603
查看次数

StackOverflow从提交一个简单的表单MVC ASP.Net网站的异常

我正在尝试为我的ASP.NET MVC网站提交一个简单的表单,但我不断收到StackOverFlow异常.我不明白我做错了什么; 它应该是一个非常简单的过程......这是表单代码:

<form action="/Home/SubmitAnnouncements" method="post">
    <textarea name="announcementcode" style="width:100%; height:800px">@Model.RawAnnouncementCode</textarea>
    <div id="find_account" class="two columns"><input id="find_account_btn" class="link_button" type="submit" name="Submit" value="Submit New Announcements" /></div>
</form>
Run Code Online (Sandbox Code Playgroud)

以下是操作的Controller代码:

[HttpPost, ValidateInput(false)]
public ActionResult SubmitAnnouncements(string announcementcode)
{
    SubmitAnnouncements(announcementcode);
    return RedirectToAction("Index", "Home");
}
Run Code Online (Sandbox Code Playgroud)

当我添加[HttpPst,ValidateInput(false)]时会出现此问题,但我需要这样做,因为用户正在提交原始HTML代码.任何人的想法?

c# asp.net asp.net-mvc asp.net-mvc-4

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