$result = Get-ADUser -Filter $filter
Run Code Online (Sandbox Code Playgroud)
如果我有2个或更多结果,我得到$ x作为数组,但如果我只有一个结果,则得到$ x作为对象.如何使它更正确,总是收到数组 - 空,一个元素或一些元素?
dotnet run (在 Windows 上)原因
warning CA1416: This call site is reachable on all platforms. 'WellKnownSidType.WorldSid' is only supported on: 'windows'.
我的程序设计为只能在 Windows 上运行。
我试图添加SupportedPlatform到MyApp.csproj,但没有运气。
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication.Negotiate" Version="5.0.5" />
<PackageReference Include="System.DirectoryServices" Version="5.0.0" />
<SupportedPlatform Include="Windows"/>
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我怎样才能表明dotnet run这个项目是仅限 Windows 的?
我想在内存中存储时间戳(数十亿个值)。主要操作是读到内存和从内存中读取,不需要 DateTime 特定的方法。为了与其他服务兼容,我想以秒为单位使用 unix 时间戳格式(以避免转换)。
所以,我想使用特殊的数据类型,而不仅仅是long在我的代码中。
我发现我不能为简单的数据类型(如 )“制作别名” long,我可以在程序集之外完全使用它。
因此,我想将 Timestamp 实现为具有单个long字段和一些方法(例如,ToDateTime、某些运算符重载等)的结构,因为结构是“非引用数据类型”并且它们保留了我的记忆。
制作结构是个坏主意吗?
任何使代码成为强类型的替代方法,重新定义Method (long, long)为Method (Timestamp, StepCount)