第一天:
System: Windows 10
Microsoft Visual Studio Community 2017
Version 15.5.5
VisualStudio.15.Release/15.5.5+27130.2026
Run Code Online (Sandbox Code Playgroud)
我有一个正在使用 WindowsAzure.Storage NuGet 包的网站项目。
在 Visual Studio 中,我执行以下操作:
Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution ...
Run Code Online (Sandbox Code Playgroud)
系统显示有2个更新可用:
Newtonsoft.Json v10.0.3 (currently installed v9.0.1)
WindowsAzure.Storage v9.0 (currently installed v8.7)
Run Code Online (Sandbox Code Playgroud)
我选择选中“选择所有包”复选框,然后单击“更新”按钮。
失败(以前从未发生过这种情况)!
以下是从 Visual Studio 捕获的输出:
Retrieving package 'WindowsAzure.Storage 9.0.0' from 'nuget.org'.
...
The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(3007) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在本地测试 Azure Functions 时读取环境变量(使用 v1 .Net 4.7.1)
下面是函数代码:
[FunctionName( "test" )]
public static async Task<HttpResponseMessage> Run( [HttpTrigger( AuthorizationLevel.Anonymous, "post", Route = null )]HttpRequestMessage req, TraceWriter log )
{
String s;
log.Info( "test: Begin..." );
s = System.Environment.GetEnvironmentVariable( "test" );
if ( String.IsNullOrEmpty( s ) )
{
log.Info( "Unable to get environment key !!!!" );
}
else
{
log.Info( "Key value = " + s );
}
}
Run Code Online (Sandbox Code Playgroud)
local.settings.json 文件包含:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"AzureWebJobsDashboard": "UseDevelopmentStorage=true",
"test": "test_value" …
Run Code Online (Sandbox Code Playgroud) 我正在测试各种 SQL 地理类型方法 - 具体来说,我想了解STContains()
和STWithin()
.
根据文档:
StWithin()
- 如果地理实例在空间上位于另一个地理实例内,则返回 1;
STContains()
- 指定调用 geography 实例是否在空间上包含传递给该方法的 geography 实例。
我在微软总部周围创建了一个简单的 1 km x 1 km POLYGON(实际上是一个正方形),从视觉上看,它看起来像这样:
使用的数据点如下:
Center point: 47.6423318, -122.1391189
Polygon (Square) corner points:
SE: 47.6378402235794, -122.13244353271
NE: 47.6468233764206, -122.13244353271
NW: 47.6468233764206, -122.14577646729
SW: 47.6378402235794, -122.14577646729
Run Code Online (Sandbox Code Playgroud)
POLYGON 声明(使用左手规则)如下,并检查是否有效:
DECLARE @bounds geography;
SET @bounds = geography::STPolyFromText('POLYGON((-122.13244353271 47.6378402235794, -122.13244353271 47.6468233764206, -122.14577646729 47.6468233764206, -122.14577646729 47.6378402235794, -122.13244353271 47.6378402235794))', 4326 );
SELECT @bounds.STIsValid() AS 'STIsValid', @bounds.STIsClosed() AS 'STIsClosed';
Run Code Online (Sandbox Code Playgroud)
SQL 返回:
STIsValid STIsClosed …
Run Code Online (Sandbox Code Playgroud) 输入以下查询时使用SQL Server 2008 R2:
SELECT CAST(POWER(2.0, 63.0) AS BIGINT);
Run Code Online (Sandbox Code Playgroud)
结果如下:
9223372036854775800
Run Code Online (Sandbox Code Playgroud)
但是,使用Windows桌面计算器并将2提高到63会产生:
9223372036854775807
Run Code Online (Sandbox Code Playgroud)
有人可以解释一下这个区别 - 或者SQL Server正在进行一些内部转换?......或者我错过了别的什么?
使用c#.Net客户端SDK,我调用ExecuteStoredProcedureAsync方法,如下所示:
sproc_response = await client.ExecuteStoredProcedureAsync<Document>(sproc_uri, new RequestOptions { PartitionKey = new PartitionKey( my_partition_key) }, doc_to_create );
Run Code Online (Sandbox Code Playgroud)
存储过程代码如下:
sproc.Body = @"function( doc ) {
var collection = getContext().getCollection();
var response = getContext().getResponse();
function create_doc_callback( err, doc_created, options ) {
if(err) throw new Error('Error creating document: ' + err.message);
response.setBody( doc_created );
}
collection.createDocument( collection.getSelfLink(), doc, {}, create_doc_callback );
}";
Run Code Online (Sandbox Code Playgroud)
此ALWAYS导致抛出以下异常:
创建文档时出错:源自脚本的请求不能引用除提交客户端请求的分区密钥之外的分区密钥.
是否有任何文档或示例清楚地显示如何使用分区键调用存储过程 - 显然,我遗漏了一些东西!
.Net MAUI 新手,正在将 CommunityToolkit.Mvvm 版本 8.0.0 与 Microsoft Visual Studio Community 2022(64 位)一起使用 - 当前版本 17.3.3
在我的 XAML 中,我有一个按钮:
<Button
Text="Add"
Command="{Binding data_addCommand}"
/>
Run Code Online (Sandbox Code Playgroud)
在我的 ViewModel 中,我有以下方法:
[RelayCommand]
private void data_add()
{
}
Run Code Online (Sandbox Code Playgroud)
当我构建时,编译器失败并显示以下内容:
Error CS0102 The type '[my_viewmodel_name]' already contains a definition for 'data_addCommand'
Run Code Online (Sandbox Code Playgroud)
然而,出于无奈,我将 XML 更改为:
<Button
Text="Add"
Command="{Binding Data_addCommand}"
/>
Run Code Online (Sandbox Code Playgroud)
...在我的 ViewModel 中:
[RelayCommand]
private void Data_add()
{
}
Run Code Online (Sandbox Code Playgroud)
唯一的区别是 Binding 命令中的方法名称和 ViewModel 中的方法名称以大写“D”开头,而不是小写“d”。
当我构建时,它成功完成!- ?? -- 我是否错过了文档中规定 [RelayCommand] 的方法名称必须以大写字母开头的内容?
我记得当使用 [ObservableProperty] 属性时,生成的属性将自动使用 UpperCamelCase 格式作为其名称。但是,我不记得看到过任何有关 [RelayCommand] 的内容。我假设情况就是这样(请原谅双关语),并且 …
尝试在Windows 10台式计算机上删除Visual Studio 2015社区版(因为我现在正在使用2017)。
但是,当我转到“应用程序和功能”时,“卸载”按钮被禁用!
在没有破坏2017的情况下如何删除VS 2015社区?
不幸的是,我继承了这个工作站,似乎没人知道原始安装盘(如果有)在哪里!我还发现此工作站上存在Visual Studio 2010和2013。我怀疑VS 2015只是下载并安装的;因此本身没有原始磁盘。
任何建议表示赞赏。
sql-server ×2
.net ×1
.net-maui ×1
bigint ×1
geography ×1
powershell ×1
sql ×1
uninstall ×1
windows ×1