小编Ale*_*der的帖子

MVC 5 Identity 2.0锁定不起作用

我需要永久阻止用户.我不明白为什么这段代码不起作用.

此行UserManager.IsLockedOut(user.Id);总是返回false而不是true.

也许有必要将此行UserManager.UserLockoutEnabledByDefault = true;置于用户注册阶段?

using (var _db = new ApplicationDbContext())
{
    UserStore<DALApplicationUser> UserStore = new UserStore<DALApplicationUser>(_db);
    UserManager<DALApplicationUser> UserManager = new UserManager<DALApplicationUser>(UserStore);
    UserManager.UserLockoutEnabledByDefault = true;
    DALApplicationUser user = _userService.GetUserByProfileId(id);
    bool a = UserManager.IsLockedOut(user.Id);
    UserManager.SetLockoutEnabled(user.Id, true);

    a = UserManager.IsLockedOut(user.Id);
    _db.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc lockout asp.net-identity

5
推荐指数
3
解决办法
2万
查看次数

时间戳的正则表达式模式

我需要为此写一个正则表达式patern:

[0:00:07]
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

string pattern = "[[0-9]{1,1}:[0-9]{1,2}:[0-9]{1,2}]";
Run Code Online (Sandbox Code Playgroud)

我有这样的结果:0:00:07].正如你所看到的,我的正则表达式错过了第一个'['.我该如何解决?

c# regex

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

请求取消令牌的任务事件或操作

这是我的代码:

public sealed class ProcessingTask : ProcessingObject
{
    private CancellationTokenSource _cancelToken;    
    private int _timeOut = 10000;

    public int ProcessObjectID { get; private set; }       
    public Task ProcessObjectTask { get; private set; }
    public QueueObject queueObject { private get; set; }
    public ProcessingTask(int processObjectID, Uri url)
        : base(url)
    {           
        this.ProcessObjectID = processObjectID;            
    }

    public void ResetTask()
    {
        _cancelToken = new CancellationTokenSource(_timeOut);            
        ProcessObjectTask = new Task(() => DoTaskWork(), _cancelToken.Token);
    }

    private void DoTaskWork()
    {
        Console.WriteLine("Thread {0} was started...", ProcessObjectID);
        //
        HttpWebRequest request …
Run Code Online (Sandbox Code Playgroud)

c# task-parallel-library

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

C#将匿名类型解析为字符串值列表

我有一个这样的数组object:

object[] internationalRates = new object[] 
{ 
new { name = "London", value = 1 }, 
new { name = "New York", value = 2 } , 
etc...
};
Run Code Online (Sandbox Code Playgroud)

我需要得到List<string>国家(或Dictionary<int, string>成对).我该如何施展它?

c#

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

在 memoryStream 之后处理 writer

这是我的一段代码:

private static MemoryStream outputStream;


public static void ConvertMp3ToWavStream(string inputPath)
        {                           
            outputStream = new MemoryStream();
            using (Mp3FileReader reader = new Mp3FileReader(inputPath))
            {
                using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(reader))
                {
                    WaveFileWriter waveFileWriter = new WaveFileWriter(outputStream, waveStream.WaveFormat);

                    byte[] bytes = new byte[waveStream.Length];
                    waveStream.Position = 0;
                    waveStream.Read(bytes, 0, (int)waveStream.Length);
                    waveFileWriter.Write(bytes, 0, bytes.Length);
                    waveFileWriter.Flush();                    
                }
            }                
        }
Run Code Online (Sandbox Code Playgroud)

这是我的CloseAndDispose方法,我在一些操作后调用它:

private static void CloseAndDispose()
        {
            if (outputStream != null)
            {
                outputStream.Close();
                outputStream.Dispose();
            }
        }
Run Code Online (Sandbox Code Playgroud)

问题:在所有操作之后,我在内存堆栈中有一些内存,这些内存没有被处理。据我了解,这是我的writer. 当我尝试处理 writer 时,出现异常。(无法阅读MemoryStream)。当我尝试在CloseAndDispose()方法之后关闭并处理 writer …

c# stream naudio

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