在C#中从getter或setter调用异步方法最优雅的方法是什么?
这里有一些伪代码可以帮助解释自己.
async Task<IEnumerable> MyAsyncMethod()
{
return await DoSomethingAsync();
}
public IEnumerable MyList
{
get
{
//call MyAsyncMethod() here
}
}
Run Code Online (Sandbox Code Playgroud) 我刚刚将一个项目转换为VS 2010,而且名称空间正在发生一些奇怪的事情.让我举一个例子,下面的代码用于在VS2008中工作:
namespace MySystem.Core.Object
{
using MySystem.Core.OtherObject;
...
}
Run Code Online (Sandbox Code Playgroud)
但是现在它没有,它要么将整个事物放在命名空间之外,如下所示:
using MySystem.Core.OtherObject;
namespace MySystem.Core.Object
{
...
}
Run Code Online (Sandbox Code Playgroud)
或者像以下一样重写:
namespace MySystem.Core.Object
{
using OtherObject;
...
}
Run Code Online (Sandbox Code Playgroud)
我理解为什么这样做可能是处理这个问题的正确方法,但现在我们必须改变数千行代码!哪个不酷.
有没有想过规避这个要求?
在SPA中,使用Sammy.js等导航框架,我如何在页面命名锚点中使用页面内导航?
例如,假设我有一条路线,例如localhost/myapp/#/somerecord/1应用程序加载一些 id = 1的记录.
然而,某些记录真的很复杂而且很长.我希望能够使用命名锚跳转到某个部分.
假设一个文章元素被定义为<article id=section-d> ... </article>,我只是链接到<a href=#section-d>Section D</a>技术上工作,但URL读取localhost/myapp/#section-d,这打破了导航堆栈.点击后退按钮可以让我回到顶部localhost/myapp/#/somerecord/1并且不会跳回到顶部.
首选操作是跳回到顶部或上一页.有关如何实现这一目标的任何想法?