小编Mat*_*ear的帖子

生成随机密码

当我们网站上的用户丢失密码并前往"忘记密码"页面时,我们需要给他一个新的临时密码.我真的不介意这是多么随机,或者如果它匹配所有"需要的"强密码规则,我想要做的就是给他们一个密码,以便以后更改.

该应用程序是一个用C#编写的Web应用程序.所以我一直在考虑使用Guid的简单方法.即

Guid.NewGuid().ToString("d").Substring(1,8)
Run Code Online (Sandbox Code Playgroud)

Suggesstions?想法?

c# random passwords

219
推荐指数
10
解决办法
20万
查看次数

将风向转换为文本词

我有来自风向标的风向数据,数据以0到359度表示.

我想将其转换为16种不同方向的文本格式(罗盘).

基本上我想知道是否有一种快速光滑的方式将角度读数缩放到16弦阵列以打印出正确的风向而不使用一堆if语句并检查角度范围

风向可以在这里找到.

谢谢!

angle

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

自定义Visual Studio 2012安装(仅限C#)

有没有办法自定义使用Visual Studio 2012安装哪些语言?我只想要C#,没有VB或F#等.

我正在尝试安装Visual Studio 2012 Premium RTM.

第一个安装页面我看到了这个:

在此输入图像描述

接下来我看到了这个:

在此输入图像描述

但是没有选择选择我要安装的语言:-(

visual-studio-2012

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

使用静态变量来缓存数据

我们正在使用LINQ to SQL和MVP开发.NET 3.5 Windows Forms应用程序.我们有一个用于检索数据的DataRepository类:

public class DbUserRepository : IUserRepository 
{
  private IList<UserName> _users;

  public IList<UserName> GetUserNames()
  {
    if (_users == null)
    {
      // retrieve _users from DB
    }

    return _users;
  }
Run Code Online (Sandbox Code Playgroud)

为了在DBUserRepository的所有实例中缓存用户列表,我们将使用企业库的缓存应用程序块.

但它发生在我身上,难道我不能只让_users成为静态成员吗​​?出于某种原因,这似乎是一种"老派"的方式,但它确实有效.这样做有什么缺点吗?这被认为是糟糕的设计吗?

private static IList<UserName> _users;
Run Code Online (Sandbox Code Playgroud)

谢谢

c#

12
推荐指数
1
解决办法
8370
查看次数

在global.asax中注册并使用带有Unity的记录器

我正在使用Unity,我注册了一个这样的记录器:

public class MvcApplication : System.Web.HttpApplication
{
    private ILogger _logger;

    protected void Application_Start()
    {
        ...
        var container = new UnityContainer();
        container.RegisterType<ILogger, NLogLogger>();

        container.RegisterControllers();

        DependencyResolver.SetResolver(new UnityDependencyResolver(container));

        _logger = container.Resolve<ILogger>();
        _logger.Info("Application started");
    }
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常 - 消息被记录.稍后在global.asax.cs中我有这个:

    protected void Application_End()
    {
        _logger.Info("App is shutting down");
    }

    protected void Application_Error()
    {
        Exception lastException = Server.GetLastError();
        _logger.Fatal(lastException);
    }
Run Code Online (Sandbox Code Playgroud)

但是,这会引发异常 - _logger为null.我怀疑我在使用Unity做错了什么 - 那么在global.asax中使用记录器的正确方法是什么?

asp.net unity-container

8
推荐指数
1
解决办法
3333
查看次数

如何卸载Visual Studio 2017更新15.3

在升级到VS 2017 15.3之后,我的解决方案进行了编译,但.NET Framework 4.6.2项目在同一解决方案中(例如,Specflow Acceptance测试)有大量编译器警告和缺少引用.当验收测试运行时,它们会出现错误:

System.IO.FileLoadException: Could not load file or assembly 'System.Runtime, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
Run Code Online (Sandbox Code Playgroud)

我现在没有时间解决这个问题,那么如何将Visual Studio 2017安装回滚到15.2呢?

其他答案(对于以前版本的Visual Studio)建议使用控制面板中的"查看已安装的更新",但我没有看到任何VS 2017更新.

visual-studio-2017

8
推荐指数
2
解决办法
9782
查看次数

从C#传递SSIS参数

我有一个SSIS包,它有一些Project.params设置.

如何通过C#将这些参数的值传递给SSIS包?

我正在尝试以下方法:

const string pkgLocation = @"export.dtsx";
var app = new Application();
var pkg = app.LoadPackage(pkgLocation, null);

var results = pkg.Execute();
Run Code Online (Sandbox Code Playgroud)

这将返回失败,并且在Variables集合中找不到包含"变量"$ Project :: connString"的Errors集合.变量可能不存在于正确的范围内."

所以我尝试添加

var param = pkg.Parameters.Add("connString", TypeCode.String);
param.Value = "test"; 
var results = pkg.Execute();
Run Code Online (Sandbox Code Playgroud)

但是这会引发DtsGenericException.

c# ssis

7
推荐指数
2
解决办法
2660
查看次数

适用于Windows窗体的可停靠自动隐藏面板控件

我正在创建一个Windows窗体应用程序,我想要与SQL Server的Management Studio具有相似的外观,即左边一个漂亮的自动隐藏和可停靠面板.

类似的控件是Visual Studio的"工具箱".

Management Studio的对象资源管理器是什么类型的控件?我在哪里可以得到一个?我在Windows Forms项目上使用.NET 3.5.

谢谢

-Matt

c# winforms

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

在WPF中自动剪辑TextBlock

我有一个TextBlock,它根据Text调整自身大小,这会导致整个窗口调整大小.我希望文本被截断 - 但我不想在用户调整窗口大小的情况下显式设置TextBlock的MaxWidth.

按下导入按钮之前:

在此输入图像描述

当前输出:

电流输出

期望的输出:

期望的输出

   <Grid Grid.Row="3">
        <Grid.ColumnDefinitions>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition Width="Auto"></ColumnDefinition>
            <ColumnDefinition Width="Auto"></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <TextBlock Name="status" Margin="3" HorizontalAlignment="Stretch" TextTrimming="CharacterEllipsis"></TextBlock>
        <Label Name="lblPercentage" Grid.Column="1" HorizontalAlignment="Right" ></Label>
        <Button Grid.Column="2" Margin="3" Name="cmdImport" Click="import_Click" HorizontalAlignment="Right">Import</Button>
        <Button Grid.Column="3" Margin="3" Name="cmdCancel" Click="cancel_Click" HorizontalAlignment="Right">Close</Button>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

wpf

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

重新设计默认的 asmx 配色方案

当您使用 .NET 2.0(或 3.5)创建 Web 服务时,它会为您生成一个 .asmx 文件。当这个 .asmx 在 Web 浏览器中呈现时,它会在顶部显示一个深蓝色边框以及 Web 服务的名称,如下所示: 网络服务截图

是否可以重新设计此页面的样式?我需要更改深蓝色以匹配客户的颜色。对我来说似乎毫无意义,但这就是客户想要的:-|

asp.net asmx

5
推荐指数
1
解决办法
874
查看次数