小编Sim*_*n C的帖子

android不允许加载本地资源:file:/// android_asset

我正在尝试从服务器加载一个html页面,该页面包含一个链接到android sdcard .js文件的脚本.

Java的:

String url ="http://192.168.84.86:8080/test/maw/js_load_test.html";
this.loadUrl(url);
Run Code Online (Sandbox Code Playgroud)

js_load_test.html:

<script src="file:///sdcard/test.js"></script>
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

<script src="file:///android_asset/www/js/test.js"></script>
Run Code Online (Sandbox Code Playgroud)

test.js文件存在且js文件路径正确.但是在logcat:file:///sdcard/test.js:

03-18 13:01:12.467:E/Web控制台(26189):不允许加载本地资源:file:///sdcard/test.js at:0

文件:///android_asset/www/js/test.js:

03-18 13:01:53.467:E/Web Console(26189):不允许加载本地资源:file:///android_asset/www/js/test.js at:0

android android-webview cordova

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

在Android Studio中使用自定义名称格式构建版本apk

我希望.apk使用以下名称格式(带时间戳)构建.

我怎么设置它?

格式: {app_name}{yyyymmddhis}.apk

现在,它已使用名称修复 {app_name}-{release}.apk

android android-studio

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

通过输入参数来减少表达式

如果我有一个函数委托的表达式,它接受许多参数,如下所示:

Expression<Func<int, int, int, bool>> test = (num1, num2, num3) => num1 + num2 == num3;
Run Code Online (Sandbox Code Playgroud)

是否有一种方式/如何替换其中一个值(比如5 num1)并获得等效表达式:

Expression<Func<int, int, bool>> test = (num2, num3) => 5 + num2 == num3;
Run Code Online (Sandbox Code Playgroud)

编辑:

还需要解决复杂类型,例如:

    Expression<Func<Thing, int, int>> test = (thing, num2) => thing.AnIntProp + num2;
Run Code Online (Sandbox Code Playgroud)

.net c# lambda delegates

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

如何在linux服务器上处理ValidateAntiForgeryToken

我在一些负载均衡的Linux服务器上部署了一个asp.net核心应用程序.由于ValidateAntiForgeryToken属性失败而将表单发布到路由时出现错误(如果POST没有返回到生成我的表单的同一台机器).

使用Windows和.Net经典,我知道匹配MachineKeyweb.configmachine.config文件中的属性.

那么,我如何在linux主机上实现相同的功能,并允许来自一台服务器的令牌在另一台服务器上进行验证?

linux antiforgerytoken .net-core asp.net-core

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

访问DelegatingHandler中的ApiController类型

我正在使用Asp.Net WebAPI进行项目.我目前正在进行身份验证和授权.

我有一个messageHandler,它将检查请求的HTTP身份验证标头并构建我的身份和用户配置文件.但是,我想用操作可能需要的声明来注释我的控制器操作(或仅控制器)(我们有很多用户可以拥有的声明,因此我不想全部加载它们).

例如:

public class MyController : ApiController
{
    [LoadClaims("SomeClaim", "SomeOtherClaim", "etc")]
    public string Get()
    {
        if (HasClaim("SomeClaim"))
            return "Awesome";

        return "Bummer";
    }
}
Run Code Online (Sandbox Code Playgroud)

在身份验证消息处理程序中,我希望能够查看属性并根据所需内容从数据库中恢复声明.为此,我需要知道我将根据路线命中的控制器和动作:

 protected override Task<HttpResponseMessage> SendAsync(
            HttpRequestMessage request, CancellationToken cancellationToken)
        {
...

            var routeData = request.GetRouteData();
            object controllerName;
            object actionName;
            routeData.Values.TryGetValue("controller", out controllerName);
...
Run Code Online (Sandbox Code Playgroud)

所以我可以做到.但是现在我需要把它变成一个我能反思的Type,但我所拥有的只是控制器名称(甚至不是完整的类名或命名空间).我怎样才能把它变成我可以反思的东西以获得属性等?

我正在研究DefaultHttpControllerSelectorWebAPI堆栈是如何做到的,它似乎正在使用HttpControllerTypeCache.这是一个内部类,所以我无法创建实例.获取目标控制器类型的正确方法是什么?

c# asp.net-web-api asp.net-web-api-routing

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

OWIN和Global.asax.cs文件

我在我的项目Owin和Katana中使用OAuth授权.并且所有工作都很好但在global.asax.cs文件中我有一些IOC容器的代码:

Bootstrapper.IncludingOnly.Assembly(Assembly.Load("Dashboard.Rest")).With.SimpleInjector().With.ServiceLocator().Start();
            Container container = Bootstrapper.Container as Container;
            GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
Run Code Online (Sandbox Code Playgroud)

我在Startup.cs文件中添加了这段代码,但之后我抓住了下一个异常:

Bootstrapper.dll中出现"Bootstrap.Extensions.Containers.NoContainerException"类型的异常,但未在用户代码中处理

其他信息:无法继续.容器尚未初始化.

如果我调用某人api方法,我会抓住下一个异常:

无法继续.容器尚未初始化.

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:Bootstrap.Extensions.Containers.NoContainerException:无法继续.容器尚未初始化.

来源错误:

第21行:public Startup()第22行:{第23行:
Bootstrapper.IncludingOnly.Assembly(Assembly.Load("Dashboard.Rest")).With.SimpleInjector().With.ServiceLocator().Start(); 第24行:容器容器= Bootstrapper.Container作为容器; 第25行:
GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);

我不知道如何解决它.请帮帮我.谢谢.

更新 我有一些SimpleInjectorRegisterTypes类用于连接我的接口和服务:

 public class SimpleInjectorRegisterTypes : ISimpleInjectorRegistration
    {
        public void Register(Container container)

            container.RegisterSingle<IApplication, ApplicationService>();      
        }
    }
Run Code Online (Sandbox Code Playgroud)

我在为API编写逻辑的地方提供服务.

在我的控制器中,我使用帮助接口创建用于调用my方法的构造函数:

 public class ApplicationController : ApiController
    {
        private readonly IApplication _application;

        public ApplicationController(IApplication application)
        {
            _application = application;
        }

        [HttpGet]
        public IHttpActionResult GetAllApps()
        {
            var apps = _application.GetAllApps();
            return apps …
Run Code Online (Sandbox Code Playgroud)

c# asp.net global-asax simple-injector owin

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

具有多个匹配项的查询中的UPDATE行

给定这样的更新语句:

UPDATE
     UserAssesment
SET
     AssessmentDate = comp.AssessmentDate     
FROM
     UserAssesment ua
INNER JOIN 
    vw_CompletedAssessments comp
On 
    ua.NatId = comp.NatId and
    ua.FamilyName = comp.ClientLastName and
    ua.GivenName = comp.ClientFirstName

WHERE
     ua.HasCompletedAssessment <> 0
Run Code Online (Sandbox Code Playgroud)

如果用户可以有多个与join子句匹配的vw_CompletedAssessments记录,哪个记录将用于更新?有没有办法订购它,以便使用最大值或最小值AssessmentDate

t-sql sql-server

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