我已经安装了Visual Studio 2017 RC,默认情况下它将语言设置为我的系统语言(波兰语)所以我试图将其更改为EN,但在选项>环境>国际设置中我只有波兰语.有"下载更多语言"的链接,它重定向到:https://www.visualstudio.com/downloads/ 在那里我只能找到VS 15的语言包.任何人都知道我在哪里可以找到VS语言包VS 17 RC?
我正在尝试在Windows Server 2012上安装SQL Server 2012,但是当我到达时:
SQL Server Analysis Services为空,因此无法继续安装过程.知道帐户名应该在那里吗?以及如何添加它?
尝试将两个表达式与 组合时出现错误AndAlso
。
步骤 1:使用表达式树构建 EF 对象的表达式:
public override Expression<Func<T, bool>> ToExpression()
{
var expressionParameter = Expression.Parameter(typeof(T), "p");
var expressionField = Expression.PropertyOrField(expressionParameter, field);
var expressionConstraint = Expression.Constant(value);
BinaryExpression expression = Expression.Equal(expressionField, expressionConstraint);
return Expression.Lambda<Func<T, bool>>(expression, expressionParameter);
}
Run Code Online (Sandbox Code Playgroud)
如果我.ToExpression();
为一个表达式调用并运行此代码,则此代码可以与 EF 正常配合,它会生成表达式:
{ p => (p.MyField1 == "X") }
Run Code Online (Sandbox Code Playgroud)
但是当我尝试做的时候
步骤 2:将两个表达式组合为AndAlso
:
public override Expression<Func<T, bool>> ToExpression()
{
Expression<Func<T, bool>> leftExpression = left.ToExpression();
Expression<Func<T, bool>> rightExpression = right.ToExpression();
BinaryExpression andExpression = Expression.AndAlso(leftExpression.Body, rightExpression.Body);
return Expression.Lambda<Func<T, …
Run Code Online (Sandbox Code Playgroud) 我使用 RabbitMQ 发送简单的短 int 信息,首先我将 id 发送到这样的一个项目:
private void SendPgcIdToRabbitMQ(string id)
{
var factory = new ConnectionFactory() { HostName = "localhost" };
using (var connection = factory.CreateConnection())
{
using (var channel = connection.CreateModel())
{
bool durable = true;
channel.QueueDeclare("XQueue", durable, false, false, null);
var body = Encoding.UTF8.GetBytes(id);
channel.BasicPublish("", "XQueue", null, body);
Console.WriteLine(" [x] Sent {0}", id);
}
}
}
Run Code Online (Sandbox Code Playgroud)
和它的听众:
public void Listener()
{
var factory = new ConnectionFactory() { HostName = "localhost" };
using (var connection = factory.CreateConnection())
{ …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的.NET Standard 1.4库中使用System.Security.Cryptography.RNGCryptoServiceProvider类,根据这个主题,我的代码如下所示:
private byte[] GenerateRandomNumber(int length)
{
using (var randomNumberGenerator = RandomNumberGenerator.Create())
{
var number = new byte[length];
randomNumberGenerator.GetBytes(number);
return number;
}
}
Run Code Online (Sandbox Code Playgroud)
我也从NuGet库安装:
但尝试解雇它会让我:
'Could not load file or package' System.Security.Cryptography.Algorithms, Version = 4.1.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a 'or one of its dependencies. The specified file could not be found. '
Run Code Online (Sandbox Code Playgroud)
在NuGet页面上没有4.1.0.0版本,只有4.1.0-rc2-24027,安装此版本后我得到完全相同的异常.
怎么了?
编辑:从.NET标准1.4切换到1.6没有帮助
编辑2:
当我点击F12时RandomNumberGenerator
:
#region Assembly …
Run Code Online (Sandbox Code Playgroud) 我正在写windows store app(8.1),我有样本(可能是win 8.0):
private WriteableBitmap WriteableBitmap;
…
WriteableBitmap = new WriteableBitmap(500,500);
…
using (Stream stream = WriteableBitmap.PixelBuffer.AsStream())
{
…
}
Run Code Online (Sandbox Code Playgroud)
所以我创建了新的win 8.1项目并尝试以同样的方式完成,但是当我到达时:
using (Stream stream = WriteableBitmap.PixelBuffer.AsStream())
Run Code Online (Sandbox Code Playgroud)
我的项目不认识*.AsStream()
方法,谁能告诉我为什么?
我正在寻找从Windows商店应用程序保存画布的方法,我发现:
private void CreateSaveBitmap(Canvas canvas, string filename)
{
RenderTargetBitmap renderBitmap = new RenderTargetBitmap(
(int)canvas.Width, (int)canvas.Height,
96d, 96d, PixelFormats.Pbgra32);
// needed otherwise the image output is black
canvas.Measure(new Size((int)canvas.Width, (int)canvas.Height));
canvas.Arrange(new Rect(new Size((int)canvas.Width, (int)canvas.Height)));
renderBitmap.Render(canvas);
//JpegBitmapEncoder encoder = new JpegBitmapEncoder();
PngBitmapEncoder encoder = new PngBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(renderBitmap));
using (FileStream file = File.Create(filename))
{
encoder.Save(file);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,这种方法不会在Windows商店应用工作(没有5参数的构造函数RenderTargetBitmap
没有PngBitmapEncoder
).所以我的问题是如何从windows商店应用程序中保存画布,因为某种图像文件(jpg,png等)有什么方法可以做到这一点?
我正在尝试使用点作为分隔符和两个十进制数字来获取双值的字符串解释,但是:
double d = 8.78595469;
Console.WriteLine(d.ToString("F"));
Run Code Online (Sandbox Code Playgroud)
返回 8,78
所以我试图根据这个问题使用NumberFormatInfo类:
double d = 8.78595469;
var formatInfo = new NumberFormatInfo
{
NumberDecimalSeparator = ".",
NumberDecimalDigits = 2
};
Console.WriteLine(d.ToString(formatInfo));
Run Code Online (Sandbox Code Playgroud)
返回8.78595469
,井分隔符是我想要的点,但为什么有超过2位小数?
编辑:
我不是在寻找其他方法来实现这一点(我可以使用,.ToString("0.00", CultureInfo.InvariantCulture)
但我想知道为什么NumberDecimalDigits
不工作(?)
我已经将Web服务迁移到.NET Core 2.0,它可以正常工作,但是在以json字符串获取响应时遇到问题。
api上的方法:
[HttpGet]
[ProducesResponseType(typeof(string), 200)]
[ProducesResponseType(typeof(EntityNotFoundErrorResult), 404)]
public async Task<IActionResult> GetCurrenciesAsync()
{
var result = await service.GetByTypeAsync(ObjectType.Currency.ToString());
return Ok(result);
}
Run Code Online (Sandbox Code Playgroud)
返回正确的json为result
:
"{\"elements\": [{\"Id\": \"1\", \"Symbol\": \"PLN\"},{\"Id\": \"2\", \"Symbol\": \"SIT\"}]}"
Run Code Online (Sandbox Code Playgroud)
然后在客户端上,我正在使用服务堆栈来获取我的货币作为字符串:
public virtual IEnumerable<CurrencyData> GetCurrencies()
{
string response = null;
try
{
response = api.Get<string>("/Currencies");
}
catch (Exception e)
{
}
return string.IsNullOrEmpty(response) ? null : JsonConvert.DeserializeObject<TempCurrencyClass>(response).elements;
}
Run Code Online (Sandbox Code Playgroud)
而response
看起来像这样:
"\"{\\\"elements\\\": [{\\\"Id\\\": \\\"1\\\", \\\"Symbol\\\": \\\"PLN\\\"},{\\\"Id\\\": \\\"2\\\", \\\"Symbol\\\": \\\"SIT\\\"}]}\""
Run Code Online (Sandbox Code Playgroud)
因此JsonConvert.DeserializeObject
抛出反序列化异常:
Newtonsoft.Json.JsonSerializationException
Run Code Online (Sandbox Code Playgroud)
但是当我反序列化对刺痛和目标的回应时,它起作用:
var …
Run Code Online (Sandbox Code Playgroud) 为什么在 Razor 视图中使用它时会String.Trim()
引发异常,string.empty
如下所示:
console.log('@Model.Test.FirstOrDefault().Trim()');
Run Code Online (Sandbox Code Playgroud)
(列表是空的,所以我得到了string.empty
)然后:
Server Error in '/' Application.
Object reference not set to an instance of an object.
(...)'
Line 326: console.log('@Model.Test.FirstOrDefault().Trim()');
Run Code Online (Sandbox Code Playgroud) c# ×8
.net ×1
.net-4.0 ×1
.net-core ×1
asp.net-mvc ×1
buffer ×1
canvas ×1
json ×1
rabbitmq ×1
razor ×1
servicestack ×1
sql-server ×1
windows-8 ×1