小编sor*_*rak的帖子

如何抑制StyleCop警告?

我正在使用StyleCop并希望抑制一些不符合我风格的警告.我更喜欢有解决方案

1)在线代码抑制
2)全局设置抑制

我搜索过互联网,但仍不确定如何进行压制.

方法1),他们说添加线:

[assembly:SuppressMessage("Microsoft.Design","SA1202:所有私有方法必须放在所有公共方法之后",Scope ="namespace",Target ="Consus.Client.ClientVaultModule.Services.OnlineDetection")]

但他们没有说明要使用的名称空间和名称.

对于方法2),他们说使用GlobalSuppress文件,但目前似乎不容易搜索如何操作.

请帮忙.

[已编辑]就我而言,我收到了关于SA1202的警告:由于我将相关代码分组到区域,因此必须在所有公共方法之后放置所有私有方法.我想仅针对某些方法来抑制这些警告.

.net c# stylecop visual-studio-2010

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

将1添加到字段中

如何将以下2个查询转换为1个查询

$sql    = "SELECT level FROM skills WHERE id = $id LIMIT 1;";
$result = $db->sql_query($sql);
$level  = (int) $db->sql_fetchfield('level');
$db->sql_freeresult($result);

++$level;

$sql    = "UPDATE skills SET level = $level WHERE id = $id;";
$result = $db->sql_query($sql);
$db->sql_freeresult($result);
Run Code Online (Sandbox Code Playgroud)

我在phpBB mod中使用它,但要点是我抓住了关卡,添加一个然后更新,如果我可以将它作为一个查询,它似乎更容易和更快.

编辑:$id已经被强制为整数,因此这次不需要转义.

php mysql

23
推荐指数
3
解决办法
2万
查看次数

MongoDB - 在数组中更新或插入对象

我有以下收藏

{
    "_id" : ObjectId("57315ba4846dd82425ca2408"),
    "myarray" : [ 
             {
                userId : ObjectId("570ca5e48dbe673802c2d035"),
                point : 5
             },
             {
                userId : ObjectId("613ca5e48dbe673802c2d521"),
                point : 2
             },        
     ]
}
Run Code Online (Sandbox Code Playgroud)

这些是我的问题

如果userId不存在,我想进入myarray,它应该被附加到myarray.如果userId存在,则应将其更新为point.

我找到了这个

db.collection.update({
  _id : ObjectId("57315ba4846dd82425ca2408"), "myarray.userId" :  ObjectId("570ca5e48dbe673802c2d035")
},{
   $set: {"myarray.$.point": 10}
})
Run Code Online (Sandbox Code Playgroud)

但是如果userId不存在,则没有任何反应.

db.collection.update({
  _id : ObjectId("57315ba4846dd82425ca2408")
},{
  $push: {"myarray": {userId: ObjectId("570ca5e48dbe673802c2d035"), point: 10}}
})
Run Code Online (Sandbox Code Playgroud)

但是如果userId对象已经存在,它将再次推送.

在MongoDB中执行此操作的最佳方法是什么?

mongodb

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

REQUEST_IGNORE_BATTERY_OPTIMIZATIONS如何正确完成

我的IntentService任务处于前台模式,但在Android M +中,任务在Doze模式下停止.如果应用程序使用意图将自己设置为白名单,我会读取Google禁止的内容.但是如果我使用权限并检查GRANT或DENIED,我会得到授予的结果,但没有任何反应.我没有在白名单中看到我的应用.如何在未经禁止的白名单中添加应用程序?(我添加了许可AndroidManifest.xml)

if(Build.VERSION.SDK_INT>=23){
    int permissionCheck= ContextCompat
                    .checkSelfPermission(this, Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);

    if(permissionCheck == PackageManager.PERMISSION_DENIED){

        //Should we show an explanation
        if(ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS)){
            //Show an explanation
            final String message = "";
             Snackbar.make(coordinatorLayoutView,message,Snackbar.LENGTH_LONG)
                     .setAction("GRANT", new View.OnClickListener() {
                         @Override
                         public void onClick(View v) {
                             ActivityCompat.requestPermissions(MainActivity.this, new String[]{ Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS }, PERMISSION_REQUEST_CODE);
                         }
                     })
                     .show();

                }else{
                    //No explanation need,we can request the permission
                    ActivityCompat.requestPermissions(this, new String[]{ Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS }, PERMISSION_REQUEST_CODE);
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

permissions android android-6.0-marshmallow

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

我的 Symfony 路由抛出 404?

我正在尝试重新开始开发,尝试使用 GoDaddy 在共享托管服务器上设置 Symfony。

我正在使用 Symfony 4(这里:http : //symfony.com/doc/current/page_creation.html)完成教程,但是URL.co.uk/lucky/number正在抛出 404。

我将完全相同的 URL 路由设置为 /(而不是幸运/数字)并且它工作正常。

routes.yaml和注释都会出现此问题。

<?php

namespace App\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;

class ArticleController

{
    /**
     * @Route("/")
     */
    public function homepage()
    {
        return new Response('OMG! My new first page already! ');
    }

    /**
     * @Route("/news")
     */
    public function news()
    {
        return new Response('This must be news?');
    }

}
Run Code Online (Sandbox Code Playgroud)

例如,以上对 / 工作正常,但使用 /news 时出现 404 错误。

这可能是一个问题.htaccess吗?我的根目录中没有。

事实证明,使用上面的代码,URL.co.uk/index.php/news工作得很好。显然我不想要这个,但我希望它有助于深入了解它......

php model-view-controller routing symfony symfony4

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

如何在node.js中反序列化PHP会话?

我将PHP $_SESSION数据存储在数据库中。

然后,我想从Node.js服务器获取数据并反序列化。

我试图像这样使用js-php-unserialize

con.query('SELECT user_id, data ' + 
            'FROM sessions ' +
            'WHERE session_id = ? AND session_id IS NOT NULL AND user_id IS NOT NULL'
          , [tokenId] , function(queryError, rows){

    if(queryError){
      throw queryError;
    }

    console.log(rows[0].data);
    return;
    var data;

    if(rows[0]){
      data = PHPUnserialize.unserialize(rows[0].data);
      var now = Math.floor(new Date() / 1000);

      if(data.MA_IDLE_TIMEOUT < now){
        throw 'The session Times out!';
      }

      if(myIP != data.MA_IP_ADDRESS){
        throw 'This session have been hijacked!';
      }
Run Code Online (Sandbox Code Playgroud)

但这总是抛出此错误:

SyntaxError: Unknown / Unhandled data type(s): …
Run Code Online (Sandbox Code Playgroud)

javascript php session serialization node.js

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

在 Actions on Google 上取消帐户关联

我正在 Google 上开发一项操作,要求用户使用我的服务登录。我能够实现帐户链接

效果很好;我能够使用 Google Home 应用完成对用户进行身份验证的整个流程,但我找不到解除帐户关联的方法。该服务未出现在

有权访问您帐户的应用

有什么办法可以解除账户绑定?

actions-on-google google-home dialogflow-es

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

如何检查一个数字是否是输入的倍数 - PHP

我想要构建的是一个函数,它接受输入数字并检查以下数字是否是该数字的倍数。

function checkIfMult($input,$toBeChecked){
   // some logic
}
Run Code Online (Sandbox Code Playgroud)

例子:

checkIfMult(2,4) // true
checkIfMult(2,6) // true
checkIfMult(2,7) // false

checkIfMult(3,6) // true
checkIfMult(3,9) // true
checkIfMult(3,10) // false
Run Code Online (Sandbox Code Playgroud)

我的第一直觉是使用数组

$tableOf2 = [2,4,6,8,10,12,14,16,18]
Run Code Online (Sandbox Code Playgroud)

但这样的调用是非常不切实际的:

checkIfMult(6,34234215)
Run Code Online (Sandbox Code Playgroud)

如何检查某些内容是否是输入的倍数?

php math multiplication

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

为什么我下载的文件总是损坏或损坏?

我的下载脚本有一个非常奇怪的问题

它基本上

1.使用"GET"方法设置文件ID

2.从数据库中获取该文件的名称和位置

3.使用headers和readfile将它发送到客户端

但奇怪的是,该文件总是出现损坏或损坏

就像它是一个zip或rar文件文件大小是正确的,它打开确定

但我不能打开它内部的压缩文件,那是我得到文件损坏的错误

这是奇怪的因为如果代码有问题我甚至不能打开zip文件(或至少我认为我不应该)

另一件事是我在发送标题之前用它的路径打印出文件,以确保一切正常

我把文件地址放在网址上并下载文件,文件没问题

所以在发送标题之前一切都很好

这是我的代码

        $file_id = isset($_GET['id']) && (int)$_GET['id'] != 0 ? (int)$_GET['id'] : exit;


        //////// finging file info
        $file = comon::get_all_by_condition('files' , 'id' , $file_id );
        if(!$file) exit;
        foreach($file as $file){
        $location = $file['location'];
        $filename = $file['file_name'];
        }
        /////////////


        $site = comon::get_site_domian();

        $ext = trim(end(explode('.' , $filename )));
        $abslout_path = 'http://'.$site.'/'.$location.'/'.$filename;
        $relative = $location.'/'.$filename;



    ////////////////// content type 
            switch($ext) {
            case 'txt':
                $cType = 'text/plain'; 
            break;              
            case 'pdf':
                $cType = 'application/pdf'; …
Run Code Online (Sandbox Code Playgroud)

php file download

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

在Android Oreo 8.0中onPause之前调用的新片段的onResume

我正面临着android Oreo的麻烦.我的MainActivity有4个片段,每当用户按下制表符时它们就会相互替换.现在的问题是,我在onPause中的单例实例中保存了一个值.每当用户按下下一个选项卡时,在o​​nPause之前调用该片段的onResume,因此我无法正确地从单例中检索该值.

android fragment fragment-lifecycle android-8.0-oreo

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