请考虑以下查询
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不要忽略空格呢?
假设git branch -a输出如下:
粗体是远程存储库中的那些分支(X,Y,Z),但我还没有检查它们,我什至不打算检查它们,它们与我不参与的项目有关。
是否有命令可以删除所有没有本地跟踪分支的远程分支(那些保存在 MY 存储库中的分支,而不是远程中的实际远程分支)?
编辑:我打算删除保存在我的存储库中的远程分支,显示远程分支的存在。我不想删除遥控器中的实际分支。
编辑 2:在对 mattmilten 的评论中澄清
您可以使用 重新创建所有远程分支git pull,但我并不总是git pull.
我经常只是git fetch origin master A B C然后合并或变基或做任何我想做的与分支主、A、B 或 C 的事情。
重点是,每当我“git pull”(出于某种原因)时,我不想要的所有分支都会被创建,而且似乎我没有简单的选择之后将它们删除。
假设我将默认字体大小设置为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%;
}
}
好吧,我发现它不起作用,因为我认为它...我试图谷歌的答案,但没有找到任何相关的,我怀疑我误解了字体大小,ems和像素密度的工作原理... …
我为.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) 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#类?或者我错过了什么?
找到两个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,B和C,
git merge-base A B C将计算A和假设提交M之间的合并基础,这是B和C之间的合并
这不是我想要的.
你如何找到两个以上分支的共同祖先提交?
我希望在针对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位.
我忘记别的了吗?
有三个项目:
在项目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的函数调用仍然可以进入并且永远不会进入.
注意:
我知道必须有一种方法可以实现这一点,我有所有可用的源代码,但我不是C或C++代码的专家,也不是它的调试.我已经尝试将bin目录中的所有各种项目C文件包含到项目A中,但无法使其正常工作.
感谢您的帮助或建议!
[TestMethod]
public void Y()
{
int i = 0;
new Task(() => i++).Wait();
Assert.AreEqual(1, i);
}
Run Code Online (Sandbox Code Playgroud)
出于什么原因,上述示例中的任务永远等待?我应该怎么Wait()做任务,所以它不挂?
我需要一些帮助来了解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 创建图像?
但是......这是否意味着图像会在更高的屏幕密度上变得像素化?
如果将上面的图像定义为最高屏幕密度,然后在不损失质量的情况下缩小到较低密度,不是更有意义吗?
是否有任何工具或版本的 XSD2Code 或 xsd.exe 可以生成 C# 实体以及 XSD2Code 的注释?
XSD2Code 和 xsd.exe 都忽略注释(对于 XSD2Code,EnableSummaryComment 效果不佳),我不想花时间分析和更改它们背后的源代码...有谁知道是否有完整的注释工作和自由的选择?