小编Mir*_*rek的帖子

MySQL DISTINCT和空白

请考虑以下查询

INSERT INTO DummyTable (TextColumn) VALUES ('Text');
INSERT INTO DummyTable (TextColumn) VALUES ('Text ');

SELECT DISTINCT TextColumn FROM DummyTable
Run Code Online (Sandbox Code Playgroud)

请注意,第二个插入包含一个空格:'Text'

但是DISTINCT忽略了空格并只返回一行'Text' - 你怎么让DISTINCT不要忽略空格呢?

mysql distinct

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

GIT:删除没有本地跟踪分支的远程分支

假设git branch -a输出如下:

  • 一种
  • C
  • *掌握
  • 遥控器/原产地/A
  • 遥控器/原点/B
  • 遥控器/起源/ C
  • 遥控器/起源/主
  • 遥控器/起源/ X
  • 遥控器/原产地/Y
  • 遥控器/原点/Z

粗体是远程存储库中的那些分支(X,Y,Z),但我还没有检查它们,我什至不打算检查它们,它们与我不参与的项目有关。

是否有命令可以删除所有没有本地跟踪分支的远程分支(那些保存在 MY 存储库中的分支,而不是远程中的实际远程分支)?

编辑:我打算删除保存在我的存储库中的远程分支,显示远程分支的存在。我不想删除遥控器中的实际分支。

编辑 2:在对 mattmilten 的评论中澄清

您可以使用 重新创建所有远程分支git pull,但我并不总是git pull.

我经常只是git fetch origin master A B C然后合并或变基或做任何我想做的与分支主、A、B 或 C 的事情。

重点是,每当我“git pull”(出于某种原因)时,我不想要的所有分支都会被创建,而且似乎我没有简单的选择之后将它们删除。

git branch remote-branch

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

字体大小和设备像素比

假设我将默认字体大小设置为16px(这应该是多余的,因为它在大多数浏览器中是默认的):

为简洁起见,我的网站包含一些尺寸为10em x 10em的盒子.

body, html 
{
    font-size: 16px;
}
.box {
    border: 1px green solid;
    background-color:green;
    width:10em;
    height:10em;
}

我的网站已min-width针对针对em值(36,62和85em)的特定断点的媒体查询做出响应.

我的网站唯一做的就是改变盒子的宽度和颜色.

@media (min-width:36em) {
  .box {
    width: 36em;
    border:1px red solid;
    background-color:red;
  }
}
@media (min-width:62em) {
    .box {
        width: 62em;
        border:1px blue solid;
        background-color:blue;
    }
}
@media (min-width:85em) {
    .box {
        width: 85em;
        border:1px orange solid;
        background-color:orange;
    }
}

现在让我们说我有一些分辨率为1440x900的设备,其中浏览器默认情况下设备的像素密度为2dppx.结果,一切看起来都比应有的大.我不喜欢它.

但解决方案应该很简单,对吧?只需在开始时为2dppx像素密度添加媒体查询,因为它是像素的两倍,我只是将字体大小减半...这应该有效,对吧?

因为我在所有东西上使用"em"然后通过将字体大小改为一半来自动减少所有"em"大小的大小......对吧?

@media ( min-resolution: 2dppx) {
    body, html {
        font-size: 50%;
    }
}

相关的jsFiddle

好吧,我发现它不起作用,因为我认为它...我试图谷歌的答案,但没有找到任何相关的,我怀疑我误解了字体大小,ems和像素密度的工作原理... …

css media-queries pixel-ratio

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

log4net 2.0.8 nuget中缺少SmtpAppender吗?

我为.NET Core 2.0创建了一个控制台应用程序,并安装了log4net 2.0.8 nuget

我想使用SmtpAppender,但库中不存在

这是我的log4net配置

<?xml version="1.0" encoding="utf-8" ?>
<log4net>
   <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
    <to value="test@test.com" />
    <from value="test@test.com" />
    <subject type="log4net.Util.PatternString" value="Message logged" />
    <smtpHost value="localhost" />
    <authentication value="None" />
    <port value="25" />
    <bufferSize value="1" />
    <lossy value="false" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%utcdate [%level] - %message%newline%exception" />
    </layout>
  </appender>
  <root>
    <level value="All" />
    <appender-ref ref="SmtpAppender" />
  </root>
</log4net>
Run Code Online (Sandbox Code Playgroud)

这是Program.cs

namespace Log4NetTest
{
    public class Program
    {
        private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(Program));

        static void Main(string[] args)
        { …
Run Code Online (Sandbox Code Playgroud)

c# log4net .net-core .net-core-2.0

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

具有至少一个元素的F#序列

F#的初学者在这里

我想创建一个类型,它是另一个具有至少一个元素的具体类型(Event)的序列.任何其他元素都可以在以后随时添加.通常在C#中我会创建一个带有私有List <Event>和公共方法的类.

但我想用功能方法来做,而不是模仿C#方法.或者至少尝试一下.

我的思路:

  • 让我们创建一个"seq"类型,并为它提供一个需要Event类型实例的构造函数

    type Event = Event of string
    
    type PublishedEvents = EventList of seq<Event> with
        static member create (event:Event) = EventList(Seq.singleton event)
    
    Run Code Online (Sandbox Code Playgroud)
  • 现在让我们添加一个"添加"方法来添加另一个可选的Event实例

    type PublishedEvents with
        member this.add(event:Event) = Seq.append this [event]
    
    Run Code Online (Sandbox Code Playgroud)

但是这不起作用,F#抱怨"这个"与seq <'a>不兼容.

所以我尝试了这个:

type PublishedEvents with
    member this.add (event:Event) : PublishedEvents = EventList(Seq.append this [event])
Run Code Online (Sandbox Code Playgroud)

现在它抱怨"这个"与seq <Event>不兼容...这让我感到困惑,因为它上面几行说EventList of seq<Event>...所以我想我需要以某种方式转换EventList回来,seq<Event>以便我可以使用Seq.append

let convertFunction (eventList:PublishedEvents) : seq<Event> = ???
Run Code Online (Sandbox Code Playgroud)

但我不知道该怎么做.

我是否正朝着正确的方向前进?是否更好地模仿具有支持字段的C#类?或者我错过了什么?

f#

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

找到两个以上分支的共同祖先

找到两个git分支的共同祖先 - 这个问题解释了如何显示两个分支的共同祖先.

git merge-base branch1 branch2
Run Code Online (Sandbox Code Playgroud)

但是,我希望看到三个或更多分支的共同祖先.起初,我认为这会奏效.

git merge-base branch1 branch2 branch3 branch4
Run Code Online (Sandbox Code Playgroud)

但它实际上并没有回归所有分支的共同祖先; 正如文档所述

给定三个提交A,BC,git merge-base A B C将计算A和假设提交M之间的合并基础,这是BC之间的合并

这不是我想要的.

你如何找到两个以上分支的共同祖先提交?

git branching-and-merging git-branch

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

消耗1.5GB内存后,VS2010 C#64bit应用程序抛出OutOfMemoryException

我希望在针对x64构建应用程序时看到System.OutOfMemoryException和任务管理器中消耗的内存.应用程序属性的"构建"选项卡中有两个下拉菜单:"平台目标"和"平台",两者都设置为x64.

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            List<long> lst = new List<long>();
            while (true)
            {
                lst.Add(long.MaxValue);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它确实显示OutOfMemoryException ...但是当它停止时,任务管理器显示一个1587443K的数字,这是1.5GB,如果它是针对x86构建的,我期望它.是的,操作系统是64位.

我忘记别的了吗?

c# 64-bit out-of-memory visual-studio-2010

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

在Visual Studio中逐步处理托管代码和非托管代码

有三个项目:

在项目A打开的Visual Studio 2012中,我无法通过项目B进入项目C.

项目B和C是免费和开源的,我已经成功构建它们.

项目A引用项目B的DLL,如果找不到项目C的DLL文件,项目A将不会运行 - 所以我已经在项目中复制并粘贴了项目C的DLL,并将"始终复制"设置为输出目录.

在调试期间进入时,我只能获得项目B的源代码.我甚至没有看到模块窗口中加载的项目C,我完全不明白.如果没有包含项目C的DLL,该项目将无法运行,当它包含在内时,它将不会加载,但所有调用都在工作,因此必须在某处加载.

我试图将项目C的PDB文件包含到项目A的输出目录中,但没有运气,从项目B到项目C的函数调用仍然可以进入并且永远不会进入.

注意:

  • 只是我的代码被禁用
  • 项目B以两种方式包含在项目B中 - 一个"lib"文件(在链接器设置中)和源代码中的".h"文件被引用...我不知道这是否是问题但是你可能会.

我知道必须有一种方法可以实现这一点,我有所有可用的源代码,但我不是C或C++代码的专家,也不是它的调试.我已经尝试将bin目录中的所有各种项目C文件包含到项目A中,但无法使其正常工作.

感谢您的帮助或建议!

c c++ debugging clr fann

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

为什么这个任务挂起?

[TestMethod]
public void Y()
{
    int i = 0;
    new Task(() => i++).Wait();

    Assert.AreEqual(1, i);
}
Run Code Online (Sandbox Code Playgroud)

出于什么原因,上述示例中的任务永远等待?我应该怎么Wait()做任务,所以它不挂?

c# task

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

了解 MauiImage BaseSize

我需要一些帮助来了解Visual Studio 中BaseSize的参数MauiImage以及导入缩放到不同屏幕密度的图像所需的过程,可能还需要一些有关移动设备上图像密度缩放的基础知识。

假设我有一个宽度为 380px、高度为 168px 的 PNG 图像,如下所示。

示例图像

文档

可以通过将 BaseSize 属性设置为可被 8 整除的值来指定图像的基本尺寸:

那么...我现在该怎么办?380px 不能被 8 整除。我是否将宽度更改为 384 或 376 BaseSize="376,168"?生成的图像是否会被裁剪 4 个像素?或者这里正确的解决方案是什么?

BaseSize 属性的值表示图像的基线密度,并且实际上是图像的 1.0 比例因子(通常在代码中用于指定图像大小的大小),所有其他密度大小均从中派生。该值将用于确保图像正确调整大小以适应不同的显示密度。如果您没有为位图图像指定 BaseSize,则不会调整图像的大小。

我正在 Android 上构建,此页面显示 Android 基线密度是 160dpi 或mdpi.

那么...这是否意味着 MAUI 自动为 ldpi、hdpi、xhdpi、xxhdpi、xxxhdpi 创建图像?

但是......这是否意味着图像会在更高的屏幕密度上变得像素化?

如果将上面的图像定义为最高屏幕密度,然后在不损失质量的情况下缩小到较低密度,不是更有意义吗?

android maui visual-studio-2022

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

使用工作注释将 XSD 转换为 C# 的免费工具/扩展

是否有任何工具或版本的 XSD2Code 或 xsd.exe 可以生成 C# 实体以及 XSD2Code 的注释?

XSD2Code 和 xsd.exe 都忽略注释(对于 XSD2Code,EnableSummaryComment 效果不佳),我不想花时间分析和更改它们背后的源代码...有谁知道是否有完整的注释工作和自由的选择?

c# xsd xsd.exe xsd2code

0
推荐指数
1
解决办法
2966
查看次数