小编End*_*ook的帖子

了解C#中的装饰器设计模式

我刚刚开始学习装饰设计模式,不幸的是我不得不通过各种参考来更好地理解装饰器模式,这让我非常困惑.所以,就我的理解而言,我相信这是一个装饰模式

interface IComponent
{
    void Operation();
}
class Component : IComponent
{
    public void Operation()
    {
        Console.WriteLine("I am walking ");
    }
}
class DecoratorA : IComponent
{
    IComponent component;
    public DecoratorA(IComponent c)
    {
        component = c;
    }
    public void Operation()
    {
        component.Operation();
        Console.WriteLine("in the rain");
    }
}
class DecoratorB : IComponent
{
    IComponent component;
    public DecoratorB(IComponent c)
    {
        component = c;
    }
    public void Operation()
    {
        component.Operation();
        Console.WriteLine("with an umbrella");
    }
}
class Client
{
    static void Main()
    {
        IComponent …
Run Code Online (Sandbox Code Playgroud)

c# design-patterns

21
推荐指数
3
解决办法
1万
查看次数

如何制作更平滑的Perlin噪音发生器?

我正在尝试使用Perlin噪声发生器来制作地图的瓷砖,但我注意到我的噪音太尖锐,我的意思是,它有太多的高度,没有平坦的地方,它们看起来不像山,岛屿,湖泊或任何东西; 它们似乎太随意而且有很多峰值.

在问题的最后,需要进行修改才能修复它.

该问题的重要代码是:

1D:

def Noise(self, x):     # I wrote this noise function but it seems too random
    random.seed(x)
    number = random.random()
    if number < 0.5:
        final = 0 - number * 2
    elif number > 0.5:
        final = number * 2
    return final

 def Noise(self, x):     # I found this noise function on the internet
    x = (x<<13) ^ x
    return ( 1.0 - ( (x * (x * x * 15731 + 789221) + 1376312589) & 0x7fffffff) …
Run Code Online (Sandbox Code Playgroud)

python random perlin-noise

8
推荐指数
1
解决办法
1401
查看次数

Directory.GetCurrentDirectory() 没有返回正确的目录

在我的 ASP.NET Core 2.2 MVC 服务器中,我想添加一个文件夹来存储静态文件。我找到了以下代码来执行该操作:

app.UseStaticFiles(new StaticFileOptions {
    FileProvider = new PhysicalFileProvider(
        Path.Combine(Directory.GetCurrentDirectory(), "StaticFiles")),
    RequestPath = "/StaticFiles"
});
Run Code Online (Sandbox Code Playgroud)

在我的电脑中,该项目位于"C:\Users\MyUsername\source\repos\WebApplication1\WebApplication1",在同一目录中有一个名为“StaticFiles”的Startup.cs文件夹和一个写入上述代码的文件。

但是当我执行代码时出现以下错误:

'System.IO.DirectoryNotFoundException' in Microsoft.Extensions.FileProviders.Physical.dll C:\Program Files\IIS Express\StaticFiles\
Run Code Online (Sandbox Code Playgroud)

Directory.GetCurrentDirectory()正在恢复"C:\\Program Files\\IIS Express",而不是"C:\Users\MyUsername\source\repos\WebApplication1\WebApplication1"我怎样才能得到正确的方向?

c# asp.net-core

5
推荐指数
1
解决办法
1万
查看次数

检查变量是否为列表的最佳方法是什么?

我找到了3种检查方法,但我不知道哪种方法最好:

x = ['Bla', 'Bla', 'Bla', 'etc']

if isinstance(a, list): print('Perfect!')
if type(a) is list:     print('Incredible!')
if type(a) == type([]): print('Awesome!')
Run Code Online (Sandbox Code Playgroud)

哪个更好?

另外,我可以使用这些方法来检查x是字符串,元组,字典,整数,浮点数等吗?如果这是可能的,在前两种方法中我是否必须将列表转换为元组,字符串,字典,整数,浮点数等(不是?),但在第三种方法中?我必须使用(),{},'',以及更多的int和float?

python variables dictionary tuples list

4
推荐指数
1
解决办法
6231
查看次数

在 PowerShell 中读取单个按键(整数)

我知道这个问题,但它没有回答我当前的问题。

我知道当前行给了我下一个按键:

$Host.UI.RawUI.ReadKey().Character
Run Code Online (Sandbox Code Playgroud)

例如,如果我按1,我会得到1

但那是一个字符串(嗯,实际上是一个字符),我想要一个整数。

我尝试:

[int]$Host.UI.RawUI.ReadKey().Character
Run Code Online (Sandbox Code Playgroud)

和:

$Host.UI.RawUI.ReadKey().Virtualkeycode
Run Code Online (Sandbox Code Playgroud)

但是在这两行中,如果您按1,则会得到49

我知道我可以简单地做:

[int]$Host.UI.RawUI.ReadKey().Character - 48
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有更好的方法来做到这一点。例如,如果我想同时获取字母和数字,则使用-48会有点困难,因为我需要使用一些条件块。

所以,我的问题是:有没有更好的方法将按下的键(数字)作为整数而不是[int]$Host.UI.RawUI.ReadKey().Character - 48

powershell

4
推荐指数
1
解决办法
265
查看次数

无法找到或使用 System.Web.Services.dll

我正在尝试使用我在 Internet 上找到的一些代码(C#,我认为是 .NET),但我的 Visual Studio 2017 说它找不到System.Web.Services.dll.

实际上,我转到了参考选项卡,但没有找到它。另外,我检查过C:\Program Files (x86)\Microsoft SDKs\UWPNuGetPackages\Microsoft.NETCore.UniversalWindowsPlatform\6.1.9\ref\uap10.0.15138,但什么也找不到。

这是我第一次使用这些技术(C#、.NET 和 UWP...),因此我不确定是否缺少一些导入和使用这些技术的步骤dll

.net c#

2
推荐指数
1
解决办法
7086
查看次数

Python 是否有带有 elif 的三元条件?

我最近发现了这个问题:Does Python have a ternary conditional operator? 并发现称为三元条件的东西a = b if c == d else e
我的问题:有一种方法可以使三元条件与elif? 类似的东西a = b if c == d elif e == f i else j

python conditional-operator

0
推荐指数
1
解决办法
3478
查看次数