小编gan*_*o55的帖子

MongoDB用于存储大量指标/分析数据的方法

我们计划使用MongoDB存储大量分析数据,例如视图和点击.我不确定在MongoDB中构建文档以帮助查询和减少数据库大小的最佳方法.

我们需要再次记录页面名称,客户端和操作类型的操作.理想情况下,我们需要下降年/月/日/小时水平的统计数据,我们不需要或关心每秒或每分钟的观看次数.虽然这个文档结构看起来还不错,但我知道100个命令会生成100个新文档.

{ 
  "_id" : ObjectId( "4dabdef81a34961506040000" ),
  "pagename" : "Hello",
  "action" : "view",
  "client" : "client-name",
  "time" : Date( "Mon Apr 18 07:49:28 2011" )
}
Run Code Online (Sandbox Code Playgroud)

有没有最佳实践方法,使用$ incCapped Collections

statistics analytics database-design mongodb

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

MEF递归插件搜索

假设我在一个文件夹中有一些应用程序(每个应用程序都有可以找到插件的子文件夹):

  • 客户端
    • 申请A.
      • ...
    • 申请B.
      • ...
    • 申请C.
      • ...
    • ...

这些应用程序中的某些文件应用了Export属性,而其他文件则没有.现在,我希望能够在其中一些应用程序中加载这些插件.是否有一种正确的方法让MEF在指定文件夹的每个子文件夹中递归搜索?

c# recursion plugins mef

14
推荐指数
1
解决办法
2297
查看次数

PHPExcel获取除$和EUR之外的单元格货币格式

PHPExcel仅使用$和EUR:

const FORMAT_CURRENCY_USD_SIMPLE        = '"$"#,##0.00_-';
const FORMAT_CURRENCY_USD            = '$#,##0_-';
const FORMAT_CURRENCY_EUR_SIMPLE        = '[$EUR ]#,##0.00_-';
Run Code Online (Sandbox Code Playgroud)

我需要的是获得其他货币(我使用"zł"代表波兰兹罗提).除$和EUR外的所有货币均标记为"一般".

关于SWilk答案的后续问题:如何使用自定义格式.我在NumberFormat.php中添加了新常量:

const FORMAT_CURRENCY_PLN_1 = '_-* #,##0.00\ [$z?-415]_-';
const FORMAT_CURRENCY_PLN_2 = '\-* #,##0.00\ [$z?-415]_-';
const FORMAT_CURRENCY_PLN_3 = '_-* "-&quot';
const FORMAT_CURRENCY_PLN_4 = '??\ [$z?-415]_-;_-@_-';
Run Code Online (Sandbox Code Playgroud)

好吗?我还需要做什么才能阅读格式

$objPHPExcel->getCellXfByIndex($cell->getXfIndex())->getNumberFormat()->getFormatCode();
Run Code Online (Sandbox Code Playgroud)

phpexcel

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

在没有iOS设备的情况下生成我的Xamarin App的IPA文件

我已经从Visual Studio 2017和Windows为Android和iOS设备创建了一个Xamarin Forms App.为了测试和构建iOS应用程序,我使用了Mac和Xamarin Mac Agent.

现在我必须为内部测试构建一个IPA文件,但是我无法这样做,因为当我为iOS模拟器构建我的项目时,它不会生成IPA文件.我也尝试使用Ad-hoc和AppStore构建选项.

我知道使用XCode 7+你可以在没有Apple开发者帐户的情况下创建一个用于内部测试的IPA文件,但是我需要有一个物理iOS设备才能获得IPA文件吗?

我希望你能帮助我.

xamarin.ios ios ipa xamarin xamarin.forms

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

在不同的ViewModel之间共享数据

我正在尝试开发一个简单的MVVM项目,它有两个窗口:

  1. 第一个窗口是文本编辑器,我在其中绑定一些属性,如:FontSizeBackgroundColor:

    <TextBlock FontSize="{Binding EditorFontSize}"></TextBlock>

DataContextMainWindowViewModel:

public class MainWindowViewModel : BindableBase
{     
    public int EditorFontSize
    {
        get { return _editorFontSize; }
        set { SetProperty(ref _editorFontSize, value); }
    } 
.....
Run Code Online (Sandbox Code Playgroud)
  1. 第二个窗口是选项窗口,我有一个用于更改字体大小的滑块:

<Slider Maximum="30" Minimum="10" Value="{Binding EditorFontSize }" ></Slider>

DataContextOptionViewModel:

public class OptionViewModel: BindableBase
{     
    public int EditorFontSize
    {
        get { return _editorFontSize; }
        set { SetProperty(ref _editorFontSize, value); }
    }
.....
Run Code Online (Sandbox Code Playgroud)

我的问题是我必须在选项窗口中获取滑块的值,然后我必须使用此值修改我的TextBlock的FontSize属性.但我不知道如何将OptionViewModel的字体大小发送到MainViewModel.

我认为我应该使用:

  1. 共享模型
  2. MainWindowViewModel中的模型以及OptionViewModel中此模型的ref
  3. 其他系统,如通知,消息...... …

c# wpf mvvm

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

将整个数据对象作为道具传递

是否可以Vue将整个data对象作为道具传递?

例如

Vue.component('comp', {
  props: ['allData'],
  template: '<div>{{allData.msg}}</div>'
})

new Vue({
 el: "#test",
 data: {
   msg: "Hello"
 }
})
Run Code Online (Sandbox Code Playgroud)

在我看来:

<div id="test">
  <comp :allData="data"></comp>
</div>
Run Code Online (Sandbox Code Playgroud)

vue.js

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

PHP格式的日期有毫秒可行,但解析失败

我使用以下格式Y-m-d\TH:i:s.v\Z来遵循JavaScript toISOString实现(2011-10-05T14:48:00.000Z).

如果我有一个DateTime并且我想格式化它,一切正常,但是我不能解析使用这种格式的字符串.

$format = 'Y-m-d\TH:i:s.v\Z';
$stringDateTime = (new \DateTime())->format($format);
var_dump(date_create_from_format($format,$stringDateTime));
Run Code Online (Sandbox Code Playgroud)

我正在使用PHP 7,我已经使用PHP 7.0,7.1和7.2测试了上面的代码.我期望在第3行中返回的是一个DateTime类,但是false由于存在解析问题,我得到了一个.

我希望有人可以澄清这种行为.谢谢

php datetime

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

如何在MySQL查询编辑器中重新排序列?

我想移动OtherSupport下面的列Amount2...是否有一个简单的方法来做到这一点?

MySQL查询编辑器

mysql

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

母版页 Xamarin 表单上的绑定字体图标

我正在尝试使用 Font Awesome 在我的母版页中添加字体。这是我的代码

new NavMenuItem { Id = 3, Title = "Home", TargetType = typeof(NavDetail), icon = "&#xf015;"}
Run Code Online (Sandbox Code Playgroud)

这是我的母版页标签代码enter code here

<Label VerticalOptions="FillAndExpand"          
    VerticalTextAlignment="Center"
    Text="{Binding icon}"                                   
    Style="{DynamicResource FontLabel}"
    FontSize="24" />
Run Code Online (Sandbox Code Playgroud)

问题是它只是按原样打印出十六进制值,而不是打印图标。如果我简单地写 Text="" 它可以工作,但是当我尝试绑定它时它不起作用。

c# binding xamarin font-awesome xamarin.forms

2
推荐指数
2
解决办法
2253
查看次数

ForEach lambda异步与Task.WhenAll

我有一个这样的异步方法:

private async Task SendAsync(string text) {
  ...
}
Run Code Online (Sandbox Code Playgroud)

对于列表中的每个项目,我还必须使用此方法一次:

List<string> textsToSend = new Service().GetMessages();
Run Code Online (Sandbox Code Playgroud)

目前,我的实现是这样的:

List<string> textsToSend = new Service().GetMessages();
List<Task> tasks = new List<Task>(textsToSend.Count);
textsToSend.ForEach(t => tasks.Add(SendAsync(t)));
await Task.WhenAll(tasks);
Run Code Online (Sandbox Code Playgroud)

通过此代码,我Task为运行async发送方法的每条消息得到一个。

但是,我不知道我的实现与这个实现之间是否有任何区别:

List<string> textsToSend = new Service().GetMessages();
textsToSend.ForEach(async t => await SendAsync(t));
Run Code Online (Sandbox Code Playgroud)

在第二个示例中,我没有List<Task>分配,但是我认为第一个Task示例是并行启动的,第二个示例是一个接一个地启动的。

您能帮我澄清一下第一样本和第二样本之间是否有区别?

PD:我也知道C#8支持foreach异步,但是我正在使用C#7

.net c# asynchronous async-await

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

静态字符串的链式插值无法按预期工作

我正在使用这样的代码:

public static class Program {
    public static void Main() {
        Console.WriteLine(hello);
    }

    internal static readonly string hello = $"hola {name} {num}";
    internal static readonly string name  = $"Juan {num}";
    public const int num = 4;
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,当我获得 hello 的值时,它返回给我“hola 4”,因此在插入另一个使用插值的字符串时似乎存在问题。我的预期行为是“hola Juan 4 4”,或者如果语言不支持这种链式插值,则编译时会出错。

有人知道为什么 C# 会出现这种行为吗?

c# string string-interpolation

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