在C#中,如何实现在一个自定义类中链接方法的能力,以便可以编写如下内容:
myclass.DoSomething().DosomethingElse(x);
Run Code Online (Sandbox Code Playgroud)
等等...
谢谢!
你能告诉我C#中有哪种构造吗?
C.WriteLine(C.ReadLine()
.Reverse()
.Select((c, i) => (c - 64) * System.Math.Pow(26, i))
.Sum());
Run Code Online (Sandbox Code Playgroud)
虽然我是C#的新手(到目前为止只有两个月),但自从我加入C#团队以来,我从未见过这种链接.它真的吸引了我,我想了解更多.
请对此有所了解.
对于这里的核心C#编码器,这看起来似乎是一个完全愚蠢的问题 - 但是,我刚刚在AWS SDK论坛中遇到了一段示例代码,并且完全被它所取代:
RunInstancesRequest runInstance = new RunInstancesRequest()
.WithMinCount(1)
.WithMaxCount(1)
.WithImageId(GetXMLElement("ami"))
.WithInstanceType("t1.micro");
Run Code Online (Sandbox Code Playgroud)
这很让人联想到旧的VB6 With ... End With语法,我一直对C#中没有这种语法感到遗憾 - 我已经在我的VS2008项目中编译了它,并且它可以节省许多独立的行,分别引用这些属性.
我确定我在过去读过文章解释为什么VB6样式的With块不在C#中,所以我的问题是:这种语法是否总是存在于语言中,或者它是最近的.NET更改启用了吗?我们可以覆盖所有对象实例化,然后在同一糖中进行属性更改吗?
我该如何进行以下编码?
Class1 objClass1 = new Class1().Add(1).Add(2).Add(3)...
Run Code Online (Sandbox Code Playgroud)
等等..
我如何实现该Add()方法来调用将反映在同一对象上的无限时间?
我遇到了一个关于Full Stack .Net Web Development的教程,我从未见过使用点运算符对C#来说是这样的.有人可以解释为什么语句不以分号结尾,并且语句属于特定对象也意味着什么?
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
namespace MyApi
{
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
}
Run Code Online (Sandbox Code Playgroud) 使用字符串类,我们能够像这样一个接一个地调用方法:
originalString.TrimStart().TrimEnd().Replace("Hello","Hi")
Run Code Online (Sandbox Code Playgroud)
我想知道它是如何工作的?这种操作在.net框架中调用了什么.
如果你能给我一个例子来创建一个像这样的类,我将不胜感激.
谢谢,