RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-188906

iRumba's questions

Martin Hope
iRumba
Asked: 2020-08-26 18:41:38 +0000 UTC

使用 Entity Framework Core 2 时的 FULL JOIN

  • 0

有 3 个表(2 个带有数据,3 个用于多对多关系)。

您需要从这些表中选择所有数据。

这就是我的查询的样子

SELECT lt."id" lt_id, lt."name" lt_name, rt."id" rt_id, rt."name" rt_name FROM "middle_table" mt
FULL JOIN "left_table" lt ON lt."id" = mt."lt_id"
FULL JOIN "right_table" rt ON rt."id" = mt."rt_id";

如何为此查询设计 LINQ 以与 EF Core 一起使用?

升级版:

我试图通过 SQL 来做到这一点

ctx.MiddleTable.FromSql(...)

它没有成功。我得到的列是空的,因为关系的表有一个来自左右表标识符的复合键。如果我在 FromSql() 之后添加怎么办

.Select(x => new MiddleTable { LeftTable = x.LeftTable, RightTable = x.RightTable})

然后查询更改为常规 JOIN,我只得到 MiddleTable 表中实际存在的那些记录。

entity-framework
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-07-01 10:39:00 +0000 UTC

自动映射器。通过中间实体进行映射

  • 0

当我通过中间实体拥有配置文件时,告诉我如何设置实体之间的映射?

有 A B C 类。我设置了配置文件 A-B 和 B-C。接下来,我想指定映射 A-C 应该通过实体 B 发生,但同时我不想每次都进行双重映射 (_mapper.Map<C>(_mapper.Map<B>(a)) 和我不想手动配置 A-B 配置文件(CreateMap().ForMember ....)。

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-06-02 01:03:16 +0000 UTC

如何动态设置 newtonsoft json 的 NamingStrategy?

  • 0

有redmine。它有一个 API。单个元素的这个 API 看起来像这样

{
  "issue": { ... }
}

其中“问题”是返回实体的类型。对于另一个实体,它将是不同的值。我想将其反序列化为一种类型

public class SingleEntity<T>
{
    public T Entity { get; set; }
}

T实体类型在哪里。当然,没有任何东西可以简单地反序列化为 Entity 属性。它不会工作NamingStrategy,因为命名我需要一个类型T,但我不能将它传递给NamingStrategyParameters,因为你不能在属性中指定typeof(T)。

我不太喜欢通过 JObject 手动反序列化的选项。如果只是因为下一步将是集合的反序列化,那么一切都会变得更加复杂。结果,代码看起来不明显。

所以我想,也许有可能在运行时为newtonsoft json配置序列化/反序列化?

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-10-09 15:32:53 +0000 UTC

在属性可以作为数组或值出现的情况下对 Json 进行反序列化

  • 3

是 json

{"id": 20, "name": "name", "multiple": true, "value":[]}

还有这样的Json

{"id": 21, "name": "name", "value": ""}

我想将其泛化为一种类型

public class MyClass
{
    [JsonProperty("id")]
    public int Id { get; set; }

    [JsonProperty("multiple")]
    public bool IsMultiple { get; set; }

    [JsonProperty("value")]
    public string[] Values { get; set; }
}

我想自动解析

var mc = JsonConvert.DeserializeObject<MyClass>(json);

问题是当单个值进来时,反序列化器无法将其解析为数组。怎么教他这个?

升级版:

顺便说一句,它没有用。这是我挂在属性上的转换器代码

public class SingleOrArrayConverter : JsonConverter<string[]>
{
    public override string[] ReadJson(JsonReader reader, Type objectType, string[] existingValue, bool hasExistingValue, JsonSerializer serializer)
    {
        var res = new List<string>();
        var type = reader.ValueType;
        var flag = true;
        while (flag)
        {
            switch (reader.TokenType)
            {
                case JsonToken.String:
                    res.Add(reader.Value.ToString());
                    break;
                case JsonToken.EndObject:
                case JsonToken.StartArray:
                case JsonToken.EndArray:
                    break;
                default:
                    throw new InvalidOperationException();
            }
            flag = reader.Read();
        }

        return res.ToArray();
    }

    public override void WriteJson(JsonWriter writer, string[] value, JsonSerializer serializer)
    {
        throw new NotImplementedException();
    }
}

结果,现在这两种情况都不起作用。测试失败并出现错误

消息:测试方法 TapSyncTests.JsonMappingTests.RmCustomFieldMultipleParseTest 抛出异常:Newtonsoft.Json.JsonSerializationException:反序列化对象时意外结束。路径'',第 1 行,位置 70..

在反序列化的时候。转换器因此正确实现。

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-07-30 12:44:35 +0000 UTC

如果出现错误(不是 200),如何通过 AJAX 请求从服务器获取响应?

  • 0

服务器上有一个方法应该返回一个文件以供下载或带有文本的错误(例如,如果找不到文件)。

如果文件存在并打开,那么一切都很好,但如果不存在,用户需要显示服务器返回的消息。

当我使用 jQuery 发送请求时,此消息来自错误函数

error: function(msg) {
    UserMessage.showMessage("Ошибка при загрузке документов!", msg.responseJSON, "danger");
}

但是JQUery不适合我,因为我需要在readyState == 2时停止请求,而我在JQuery中没有找到这样的机会。只有成功。

因此我使用原生 XMLHttpRequest。但问题是在这种情况下我不知道如何从服务器获取此消息。我就是找不到。我什至尝试通过Restlet客户端发送这个请求,但我只得到一个错误状态,服务器发送的消息根本找不到。某种魔法。

javascript
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-07-09 12:48:40 +0000 UTC

帮我搭建一个带元素的小容器

  • 0

你需要一个块,如图所示。如果有些东西看起来歪了,我会附上文字描述。

有一个主块。它可以位于页面上的任何位置(可能这些信息会影响最终结果),它的尺寸是手动设置的并影响其内容。内容不应该能够调整块的大小(应该适合它)。

在此块内有 3 个部分:

第一个和最后一个的宽度相等,并占据块中的所有可用空间。

中间部分的宽度是自动的,取决于内容的宽度。

中间部分有2个垂直排列的块。它们的垂直位置居中(相对于主机的高度)。

重要的!

需要IE11支持

布局

html
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-01-23 12:51:26 +0000 UTC

引导和动态选项卡

  • 2

有这个标记

  <!-- Навигация -->
  <ul class="nav nav-pills" role="tablist" id="navtabs">
  </ul>
  <!-- Содержимое вкладок -->
  <div class="tab-content" id="tabcontent">
  </div>

有这个脚本

<script>
    $(document).ready(function() 
    {
        $('#navtabs').empty();
        $('#tabcontent').empty();
        $.each(myArray, function(i, v)
        {
            $('#navtabs').append('<li class="nav-item"><a href="#' + v + '" role="tab" data-toogle="tab" class="nav-link" id="tabh' + i + '">' + v + '</li>');
            $('#tabcontent').append('<div role="tabpanel" class="tab-pane fade" id="' + v + '">' + v + '</div>');
        });

        $('#tabh0').tab('show');
    });
</script>

也就是说,关键是标签及其内容是基于数组形成的。它们形成了,但没有按应有的方式工作。

$('#tabh0').tab('show');

打开第一个选项卡

如果在控制台中我写

$('#tabh1').tab('show');

第二个选项卡将打开。

但是在点击时它们不会改变。帮助修复。

javascript
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-12-25 14:43:29 +0000 UTC

具有动态列集的 DataGrid 或类似控件

  • 1

DataGrid至少需要一个解决方案ListView (View == GridView)

有一堂课。像这样的东西

public class MyClass
{
    public List<MyClass2> List1 { get; set; }
    public List<MyClass2> List2 { get; set; }
}

必须按照我准备的模板将其显示在表单List1的第一列中коллекции<MyClass2>,然后根据我准备的模板将每个元素List2显示在单独的列中MyClass2。自然,对于коллекции<MyClass>每个元素具有相同数量的元素List2

问题是

<DataGrid ItemsSource={Binding ...} ItemTemplateSelector={SomeSelector}>

</DataGid>

不工作。我的不具体工作DataTemplateSelector。该程序甚至不访问它(我在标记中正确指定了它,它正在创建中)。

在ListView代码的情况下略有不同,但大体含义是相同的。

当我尝试在代码中创建列时,我不知道如何从模板访问 ViewModel 中的必填字段。都是因为它DataGridTemplateColumn没有绑定,所以我在模板中有整行。如果不是动态创建的列,我会为每个列创建一个单独的模板来绑定到所需的字段,但在这种情况下,我不知道所有的字段。会有多少人?List2[0], List2 1 .... 以此类推。

升级版:

这是设置数据时结果的样子

new List<MyClass>
{
    new MyClass
    {
        List1 = new List<MyClass2>
        {
            new MyClass2(),
            new MyClass2(),
            new MyClass2(),
        },
        List2 = new List<MyClass2>
        {
            new MyClass2(),
            new MyClass2(),
            new MyClass2(),
            //и тд.
        },
    },
}

结果示例

如您所见,List1 在列中显示为一组容器,这些容器由 MyClass2 类型的元素组成,而 List2 被逐个元素分解为列,其中每个列有一个元素。

UPD2:

到目前为止,找到了一个可以在这里使用的选项https://stackoverflow.com/questions/20493184/datagridtemplatecolumns-autogeneratecolumns-true-and-binding-to-a-datatable(在标记为答案的答案中)但它很难看在支持计划中

wpf
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-09-22 14:24:46 +0000 UTC

关于 x = yield f() 的问题——调用和赋值的顺序是什么?

  • 5

解释函数内的这一行是什么意思

some_variable = yield some_function()

如果我理解正确,yield some_function()在这种情况下,它会将结果发送到生成器,然后将结果写入变量,并在此分配后继续执行代码。

如果我理解正确,那么问题。赋值是在当前结果返回处理后发生,还是当前函数先执行到最后,再将结果返回给生成器?

python
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-09-20 15:41:34 +0000 UTC

如何在 Python 3 中使用构造函数外部的属性(如 c#)在 1 行中初始化现有类?

  • 5

c# 中有一个非常有用的构造。如果我需要创建一个类的实例,并且需要设置的属性不在构造函数中,那么可以像这样在一行中完成

var mc = new MyClass() { Prop1 = 1, Prop2 = "qwe" };

是否可以在 python 中做类似的事情?

一般来说,你需要收集一个列表

list = [MyClass(el) for el in otherList]

唯一的问题是什么都不能传递给 MyClass 构造函数。在这种情况下,如何创建一个实例并在一行中设置 1 个或多个属性?

升级版:

这个问题与上一个问题相似,但这些答案不适合我。也许这是因为那里提出的问题本身没有那么具体。

UPD2:

哦,是的,问题仍然不同。那里有人问如何在机器上挂一个类初始化函数,我问如何使用现成的类,没有自动化的提示。一般来说,我建议您仔细阅读这两个问题,然后一切都会变得清晰

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-06-27 10:29:10 +0000 UTC

算法的复杂性与速度有何关系?

  • 0

有一个代码

var a = 0;
for(var i = 0; i < n; i++)
{
    a++;
    a++;
    a++;
}

并且有一个代码

var a = 0;
for(var i = 0; i < n; i++)
{
    a += 3;
}

两种算法的复杂度都是 O(n),但是该死的……

很明显,任何适当的编译器都会将第一个选项折叠成第二个选项,但有些情况并不那么明显,所以让我们假设编译器不会这样做。

结果,第二个代码的执行速度比第一个快 3 倍。但是难度是一样的。在这种情况下,如何“科学地”证明第一个代码是便便?

алгоритм
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-06-26 17:31:59 +0000 UTC

一组字节的位移位

  • 4

有byte[]

需要以最小的代价对其进行左移或右移。

在寻找解决方案时,我遇到了BitArray. 它的构造函数之一采用字节数组。该类允许您执行各种位运算(AND NOT OR XOR),但不允许您进行移位。

c#
  • 6 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-06-06 12:53:35 +0000 UTC

所有控制器的 MVC 通用操作

  • 2

有一个 ASP.NET MVC 5 应用程序,有许多控制器。所以,我需要为每个控制器做一系列的重复动作。如何?

我确定他们会询问具体情况(虽然我不确定这是否有必要),所以我会告诉你有关这些行动的信息。

如果用户请求这个 URL:http : //my.app/Controller/Page/?qwe=asd ,那么某些变量(不是全部,但在这种情况下肯定是 qwe)应该写在 cookie 中,然后重定向到一个干净的 URL: http: //my.app/Controller/Page

怎么做?

asp.net-mvc
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-05-30 14:12:31 +0000 UTC

如何找到向量之间的角度?

  • 1

输入中有 3 个 AOB 点(但我已经将所有内容简化为向量 a 和 b)。

我们需要一个不限制钝角、锐角、直角和其他特殊角度的完整版本。理想情况下,我想获得 0 到 360 度或 -180 到 180 度的角度。

математика
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-04-21 12:39:38 +0000 UTC

绑定转换器参数={绑定...}

  • 4

我需要指定 , 作为转换器的参数Binding,但这是不可能的,因为它ConverterParameter不是DependencyProperty。

我在网上找到的所有解决方案都暗示了使用MultiBinding并且有效。直到我需要反向转换。告诉我该怎么做。

更新程序

很多东西不得不写在评论里,我就转过来以防万一。

转换器获取 V(值)P(参数)并在输出端等待 R(结果)

反向转换的工作方式相同。

如果我使用 MultiBinding,则转换器将采用 V[](值)并期望 R(结果)作为输出

反向转换将取 V(值)并在输出处等待 R[](结果)

但我实际上有 3 个变量(a、b、c)。a=b*c

也就是说,要计算这些变量中的任何一个,我需要另外两个。在多重绑定的情况下,我被提议从反向转换中恢复 b 和 c

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-04-11 10:59:41 +0000 UTC

什么是 Task.Yield()?

  • 32

我不明白它是什么、它是如何工作的以及在什么情况下使用它。有人可以用俄语解释吗?

c#
  • 2 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-04-05 10:28:23 +0000 UTC

Wait()在Task中是如何实现的?

  • 1

我怀疑它Task.Wait()里面有循环while。但它是如何实施的呢?通过狡猾的洛基?

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-04-03 17:56:51 +0000 UTC

棱镜4.1初始化

  • 1

安装棱镜 4.1 (PV 4.0)

我阅读手册。他们都说首先你需要从Bootstrapper. 其中一个被覆盖的方法应该看起来像这样

protected override DependencyObject CreateShell()
{
    return ServiceLocator.Current.GetInstance<Shell>();
}

但它是什么Shell?我找不到这样的类型。

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-03-31 12:28:25 +0000 UTC

async void 或如何将 Action 变成 Func<Task>

  • 0

有一个接受构造函数的类Action<object>。但我需要在那里传递一个异步方法(即Func<object, Task>)。创建了一个继承人并在构造函数中尝试执行以下操作

public MyClassAsync(Func<object, Task> execute) :
    base (async (o)=>await Task.Factory.StartNew(()=>execute?.Invoke(o)))
{ }

自然地强调async并写道

异步方法匿名不应该返回 void

那我该怎么办?

这不是编译器错误。据我所知,这只是一个警告,表示编译器不确定在这种情况下如何表现。也就是说,我的代码可以编译、运行,但我不确定它是如何工作的。

更新:

我会告诉你一些例子

这里是https://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.mvvm.relaycommand(v=vs.110).aspx说明在这里RelayCommand

这是构造函数之一

RelayCommand(Action<Object>, Predicate<Object>)

这是https://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.mvvm.asyncrelaycommand(v=vs.110).aspx AsyncRelayCommand : RelayCommand

这是相应的构造函数

AsyncRelayCommand(Func<Object, Task>, Predicate<Object>, Boolean)

不幸的是,我不知道在哪里查看源代码。但是有些事情告诉我,如果我按照评论中的建议传递给基本构造函数o => Task.Factory.StartNew(...),那么我将得到一个非托管任务,我将无法知道它的结束。

UPD2

所以最后我应该上两节课

RelayCommand和AsyncRelayCommand : RelayCommand

它应该像这样使用

public RelayCommand SomeCommand {get;set;}

public RelayCommand SomeAsyncCommand {get;set;}

public Ctor()
{
    SomeCommand = new RelayCommand(AnyMethod, Predicate);
    SomeAsyncCommand = new AsyncRelayCommand(AnyMethodAsync, Predicate);
}

async Task AnyMethodAsync()
{
    await SomeTask;
    UIMethod(); // я должен быть уверен, что этот метод выполнится в UI потоке. Конечно, предполагается, что задача сработала посредством взаимодействия пользователя с интерфейсом (по нажатию кнопки или хоткея или еще как)
}

不可能为 定义一个构造函数AsyncRelayCommand,因为它应该使用 的基本构造函数RelayCommand,但它接受Action(好吧,或者Action<object>,但这已经是一个可变性问题),并且异步方法必须是类型Func<Task>(或Func<object,Task>)

c#
  • 1 个回答
  • 10 Views
Martin Hope
iRumba
Asked: 2020-03-28 17:36:30 +0000 UTC

创建对象的时间是否取决于其属性和方法的数量?

  • 3

有2个类:

public class MyClass
{
    public int Prop { get; set; }
}

public class MyClass2
{
    public int Prop1 { get; set; }
    public int Prop2 { get; set; }
    public int Prop3 { get; set; }
    public int Prop4 { get; set; }
    public int Prop5 { get; set; }
}

这些类的构造函数是否会在相同的时间内工作?

c#
  • 2 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5