Z-Index使用DrawingContext.DrawXXX()方法时如何设置绘图对象?
如何确保我的应用程序的单个实例,并在尝试打开第二个实例时将焦点设置为它?
我试过了:
public partial class Form1 : Form {
[DllImport("USER32.DLL", CharSet = CharSet.Unicode)]
public static extern
IntPtr FindWindow(String lpClassName, String lpWindowName);
[DllImport("USER32.DLL")]
public static extern
Boolean SetForegroundWindow(IntPtr hWnd);
private void Form1_Load(object sender, EventArgs e)
{
bool isRunning = Process.GetProcesses()
.Where(p => p.MainWindowTitle.Contains(Text))
.Count() > 1;
if (isRunning)
{
FocusWindow(Text);
Application.Exit();
}
}
public static void FocusWindow(string title)
{
SetForegroundWindow(FindWindow(null, title));
}
}
Run Code Online (Sandbox Code Playgroud)
这不是关注应用程序.我怎样才能解决这个问题?
有没有办法将消息的子字符串获取到 nlog 布局?就像是${${substring(0,200)}message}
<parameter name="@Summary" layout="${substring(0,200)}${message}"/>
Run Code Online (Sandbox Code Playgroud)
如果这能写出 message.substring(0, 200); 的等价物,那就太酷了。
<target type="Database" name="databaseLog"
ConnectionStringName="ApplicationConnectionString">
<commandText>
INSERT INTO [Log] ([Description] ,[Summary] ,[Level] )
VALUES (@Description, @Summary, @Level )
</commandText>
<parameter name="@Description" layout="${message}"/>
<parameter name="@Summary" layout="{{SUBSTRING-OF-MESSAGE-HERE}}"/>
<parameter name="@Level" layout="${level}"/>
</target>
Run Code Online (Sandbox Code Playgroud) 这是什么意思?
System.MissingMethodException未由用户代码处理
HResult = -2146233069消息=未找到方法:'System.Data.Entity.ModelConfiguration.Configuration.PrimitivePropertyConfiguration System.Data.Entity.ModelConfiguration.Configuration.StructuralTypeConfiguration1.Property(System.Linq.Expressions.Expression12 <!0,!! 0 >>)".Source = Att.Uds.DataLayerMappings StackTrace:位于att.Uds.DataLayerMappings.ItemTypeItemConfiguration..ctor()at at.Uds.DataLayerMappings.UdsContext.OnModelCreating(DbModelBuilder modelBuilder)in c:\ TFS\ATS-MSDev\UDS\Dev\Code\Att.Uds.DataLayerMappings\UdsContext.cs:位于System.Data.Entity.Internal.RazyInternalContext.CreateModelBuilder()处System.Data.Entity.Internal的System.Data.Entity.DbContext.CallOnModelCreating(DbModelBuilder modelBuilder)的第163行System.Data.Entity.Internal.RetryLazy2.GetValue(TInput输入)中的.LazyInternalContext.CreateModel(LazyInternalContext internalContext)InnerException:
此类发生错误:
namespace Contoso.Fabrikam.DataLayerMappings
{
public abstract class NamedEntityConfiguration<TEntity> : EntityBaseConfiguration<TEntity> where TEntity : NamedEntity
{
public ConfigurationColumn NameColumn;
protected new int LastOrdinalPosition
{
get
{
return (NameColumn.Ordinal);
}
}
public NamedEntityConfiguration() <=== EXCEPTION HERE
{
NameColumn = new ConfigurationColumn() { Ordinal = base.LastOrdinalPosition+1, Name = "Name", IsRequired = true, Length = 128 };
this.Property(t => t.Name)
.HasColumnName(NameColumn.Name)
.HasColumnOrder(NameColumn.Ordinal)
.HasMaxLength(NameColumn.Length);
if(NameColumn.IsRequired) …Run Code Online (Sandbox Code Playgroud) 在20个元素大小的数组中为每个元素存储3个值的最佳方法是什么?例如,一个20人的阵列,可以存储他们的姓名,地址和电话号码.
会不会是这样的
int[][] myArray = new int[20][3];
Run Code Online (Sandbox Code Playgroud)
或类似的东西?
谢谢
有没有办法使用Rhino Mocks生成Stub IObjectSet<T>?
之后的内容类似于以下代码:
var context = MockRepository.GenerateMock <IContext>();
//generate stub
var mockProjectObjectSet = MockRepository.GenerateStub<IObjectSet<Project>>();
TestObjectSets.GenerateFakeProjectList(mockProjectObjectSet);
context.Expect(p => p.Projects).Return(mockProjectObjectSet);
var projectRepository = new ProjectRepository(context);
Run Code Online (Sandbox Code Playgroud)
在GenerateFakeProjectList静态帮助器方法中,我只是创建指定类型的对象,并通过以下AddObject方法将它们添加到存根IObjectSet:
public static IObjectSet<Project> GenerateFakeProjectList(IObjectSet<Project> projectsObjectSet)
{
projectsObjectSet.AddObject(new Project()
{
Categories = null,
DateCreated = DateTime.Now.AddDays(-10),
.......
Run Code Online (Sandbox Code Playgroud) 我有这个列举
public enum LightFiles
{
PNG,
JPG,
GIF,
FLV,
TIF,
BMP,
MP3,
WAV,
WMA,
TXT,
PDF,
XML,
DOC,
XLS,
DBF,
SQL,
CSS,
HTM
}
Run Code Online (Sandbox Code Playgroud)
我需要检测文件名是否有一个枚举.item,如果是则返回TRUE.
我想通过LINQ有一些解决方案.我真的不知道如何解决这个问题...
任何线索的家伙?
static public bool IsLightFile(string fileName)
{
// Needs some LINQ
}
Run Code Online (Sandbox Code Playgroud) 我们知道c#中的Array类是抽象的.
但是此类的静态CreateInstance方法返回Array类的对象.
这怎么可能?
我试图将默认架构/实例指定为连接字符串(或特定命令)的一部分,因此它不需要是查询的一部分.
OdbcConnection conn = new OdbcConnection("Driver={IBM DB2 ODBC DRIVER}; Database=myDB; Hostname=myHostName; Port=myPort; Protocol=TCPIP; Uid=myID; Pwd=myPW;");
OdbcCommand comm = new OdbcCommand("select count(*) from customers", conn);
conn.Open();
var value = comm.ExecuteScalar();
conn.Close();
Run Code Online (Sandbox Code Playgroud)
不幸的是,这失败了,错误:
ERROR [42S02] [IBM] [CLI驱动程序] [DB2] SQL0204N 本身份识别码 .customers是一个未定义的名称.SQLSTATE = 42704.
注意它使用的是模式/实例所在的myID.如果我指定架构/实例明确:
OdbcCommand comm = new OdbcCommand("select count(*) from mySCHEMA.customers", conn);
Run Code Online (Sandbox Code Playgroud)
它按预期工作.我想指定mySCHEMA连接字符串的一部分,类似于使用MS SQL Server时的"初始目录".
经过一系列的实验和谷歌搜索,我似乎无法弄明白.有任何想法吗?
void f(string message)
{
string.Format(message,"x",y");
}
Run Code Online (Sandbox Code Playgroud)
f()由g调用:
g()
{
f(SomeJson+"{0}");
}
Run Code Online (Sandbox Code Playgroud)
json中的花括号被解释为string.format()f()中值的占位符.有没有办法让花括号逃脱?