Вы можете использовать видимую область проекции и цель камеры, чтобы достичь желаемого:
cameraTarget = map.cameraPosition.target
when (viewPort?.contains(cameraTarget)) {
true -> {
// Did not scroll more than half (camera center still inside initial bounds)
}
false -> {
// Scrolled more than half (camera center outside initial bounds)
}
}
viewPort = map.projection.visibleRegion.latLngBounds
] - я только что понял, как этого добиться.[
] [] - просто используйте свойство []VaryByHeader[
], установленное на [] "host"[
]. Есть много возможностей сделать это.[
]Используйте []OutputCacheAttribute[
], передавая все необходимые элементы конфигурации, включая []VaryByHeader[
]:[
public class HomeController : Controller
{
[OutputCache(Duration = 3600, VaryByParam = "none", VaryByHeader = "host")]
public ActionResult Index() { /* ... */ }
}
]
[]Или вы можете установить его в профиль в Web.config:[
] [<?xml version="1.0"?>
<configuration>
<!-- ... -->
<system.web>
<!-- ... -->
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<clear/>
<add name="Multitenant"
enabled="true"
duration="3600"
varyByHeader="host"
varyByParam="none"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
</system.web>
</configuration>
]
[]Затем использовать:[
] [public class HomeController : Controller
{
[OutputCache(CacheProfile = "Multitenant")]
public ActionResult Index() { /* ... */ }
}
]
[]Или вы можете подразделить []OutputCacheAttribute[
] и использовать:[
public sealed class MultitenantOutputCacheAttribute : OutputCacheAttribute
{
public MultitenantOutputCacheAttribute()
{
VaryByHeader = "host";
VaryByParam = "none";
Duration = 3600;
}
}
]
[]Затем использовать:[
] [public class HomeController : Controller
{
[MultitenantOutputCache]
public ActionResult Index() { /* ... */ }
}
] В случае, если люди попадают на эту страницу и ищут эквивалент в asp.net 2.x. Атрибут будет выглядеть так:
[ResponseCache(Duration = 30, Location = ResponseCacheLocation.Any, VaryByHeader = "host", VaryByQueryKeys = new string[] { "*" })]
И вам понадобится промежуточное программное обеспечение. Вам нужен этот пакет Nuget и этот код:
public void ConfigureServices(IServiceCollection services)
{
//stuff before...
services.AddResponseCaching();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
//stuff after...
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
//stuff before...
app.UseResponseCaching();
//stuff after...
}