小编Jan*_*nik的帖子

静态方法总是保存在内存中吗?

我的整个开发团队都认为,静态方法是一件很糟糕的事情.

在某些情况下我真的没有看到任何缺点.当我之前需要无状态方法时,我总是为此目的使用静态方法.

我同意他们的一些观点,例如我知道他们很难测试(尽管这并非不可能).

我不知道的是,他们声称,静态方法总是保存在内存中,并将填充基本的内存使用量.因此,如果您在程序中使用100个静态方法,则在程序启动时,所有方法都会加载到内存中,并且会不必要地填充内存.此外,静态方法会增加内存泄漏的风险.

真的吗?

为了调用方法而必须创建一个类的新实例是非常不方便的.但这就是他们现在如何做到这一点,在方法中创建一个实例并调用该方法,这可能只是一个静态方法.

c# static

18
推荐指数
2
解决办法
6459
查看次数

将通用List <string>绑定到ComboBox

我有一个ComboBox,我想绑定一个通用的List.任何人都可以看到为什么下面的代码不起作用?绑定源中包含数据,但它不会填充ComboBox数据源.

FillCbxProject(DownloadData Down)
{
  BindingSource bindingSource = new BindingSource();
  bindingSource.DataSource = Down.ProjectList;
  cbxProjectd.DataSource = bindingSource;
}
Run Code Online (Sandbox Code Playgroud)

旁注:传递一个类的实例是不是很糟糕?

谢谢!

c# data-binding binding winforms

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

SQL71501 - 如何摆脱这个错误?

我们在项目中使用了两个模式(dbo+ kal).

当我们尝试使用以下SQL语句创建视图时,Visual Studio在错误列表中显示为错误.

CREATE VIEW [dbo].[RechenketteFuerAbkommenOderLieferantenView]
AS
    SELECT
        r.Id as RechenkettenId,
        r.AbkommenId,
        r.LieferantId,
        rTerm.GueltigVon,
        rTerm.GueltigBis,
        rs.Bezeichnung,
        rs.As400Name
    FROM
        [kal].[Rechenkette] r
    JOIN
        [kal].[RechenketteTerm] rTerm ON rTerm.RechenketteId = r.Id
    JOIN
        [kal].[Basisrechenkette] br ON rTerm.BasisrechenketteId = br.Id
    JOIN
        [kal].[Rechenkettenschema] rs ON rs.Id = br.Id
    WHERE 
        r.RechenkettenTyp = 0
Run Code Online (Sandbox Code Playgroud)

错误消息如下所示:

SQL71501:计算列:[dbo].[RechenketteFuerAbkommenOderLieferantenView].[AbkommenId]包含对象的未解析引用.对象不存在或引用不明确,因为它可以引用以下任何对象:
[kal].[Basisrechenkette].[r] :: [AbkommenId],[kal].[Rechenkette].[AbkommenId] ,[kal].[Rechenkette].[r] :: [AbkommenId],[kal].[Rechenkettenschema].[r] :: [AbkommenId]或[kal].[RechenketteTerm].[r] :: [AbkommenId ].

发布视图和工作是很好的,但是在构建我们的项目时看到错误消息非常烦人,因为所有严重错误都会在这些sql错误的混乱中丢失.

你有什么想法,问题可能是什么?

sql sql-server visual-studio-2013

10
推荐指数
4
解决办法
2万
查看次数

HTML.EditorFor有3个小数位

如何显示带小数点后3位的模型十进制字段.目前它将它缩短为2位数.

1,237目前将显示为1,24;)

c# asp.net-mvc editorfor

9
推荐指数
1
解决办法
7167
查看次数

将ASP.NET 5项目发布到Docker时找不到名为"Custom"的AspnetPublishHandler

我试图将未修改的ASP.NET 5项目发布到我刚刚安装的Ubuntu 15.04服务器,但是我收到以下消息:

发布期间发生错误.找不到名为"Custom"的AspnetPublishHandler

我将服务器绑定到正确的端口:

docker daemon -H 0.0.0.0:5555 &
Run Code Online (Sandbox Code Playgroud)

连接验证成功.任何人都知道什么可能是错的?

docker visual-studio-2015 ubuntu-15.04 asp.net-core

9
推荐指数
1
解决办法
193
查看次数

为什么ReSharper在未明确指定CultureInfo时会在Char.ToString()处发出警告?

我想知道为什么ReSharper会警告我,当我试图将char转换为字符串而不提供特定的文化信息时.

是否有任何情况,它可以在两个系统上进行不同的转换?

例:

var str = ' '.ToString();
Run Code Online (Sandbox Code Playgroud)

默认情况下会弹出以下ReSharper警告:

明确指定字符串转换中的区域性.

c# resharper cultureinfo

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

如何浏览文件夹

我想设计一个包含浏览按钮的程序,我们可以浏览到所选文件夹并打开文件夹内的文件.

我需要一个参考和阅读,我可以解决我的问题?喜欢我应该使用什么方法/类.我不喜欢从MSDN上读书,因为我很难理解他们的理论.仅供参考我仍然是C#的初学者.

非常感谢你

P/s:这是我从互联网上找到的代码,您可以浏览/创建新文件夹.但我不知道为什么它使用Shell32.dll ..

private void button1_Click(object sender, EventArgs e)
{
    string strPath;
    string strCaption = "Select a Directory and folder.";
    DialogResult dlgResult;
    Shell32.ShellClass shl = new Shell32.ShellClass();
    Shell32.Folder2 fld = (Shell32.Folder2)shl.BrowseForFolder(0, strCaption, 0,
        System.Reflection.Missing.Value);
    if (fld == null)
    {
        dlgResult = DialogResult.Cancel;
    }
    else
    {
        strPath = fld.Self.Path;
        dlgResult = DialogResult.OK;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# winforms

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

SDL:获取窗口高度/宽度/矩形?

在先前版本的SDL中,我能够使用具有clip_rect成员的主表面获得问题的高度和宽度.从2.0开始我使用的是SDL_Renderer和SDL_Window.

如何获得当前程序的窗口大小甚至更好?

sdl sdl-2

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

获取 SDL_Texture 中单个像素的 SDL_Color

我在寻找如何在 SDL_Texture 上检索像素的特定颜色的解决方案时遇到了一些问题......更具体地说:我正在尝试计算给定纹理中使用的平均颜色量。稍后我想将红色像素的数量除以像素总数。对于这个任务,我需要一种方法,它可以让我得到每个像素的颜色......

我试图搜索一些函数,但不幸的是我无法弄清楚......我看到了 SDL_RenderReadPixels 和 SDL_GetPixelFormatName 之类的方法,但这些方法都没有帮助我......

你对我有解决方案吗?

c++ sdl-2

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

ReSharper建议使用var - 它可以做相反的事情吗?

Resharper建议我使用var-keyword.不幸的是,我的新雇主根本不使用var-keyword.这就是我遇到麻烦的原因,因为我习惯使用var-keyword.

是否有可能让resharper做相反的事情?所以,每次我使用var关键字时都会警告我,并建议我明确声明变量?

提前致谢!

编辑:\

我不想关闭警告或类似的东西,我想转动那个环境,所以每当我使用var时我都会收到警告.

c# resharper

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