gpt4 book ai didi

c# - 有没有办法要求两个可选的方法参数成对使用?

转载 作者:行者123 更新时间:2023-11-30 19:57:10 24 4
gpt4 key购买 nike

在我的通用接口(interface)中,我有一个具有可选参数的函数。我这样写是为了遵循 DRY(D不是Repeat Y我们自己)。虽然该函数有效,并且我在函数中有逻辑来处理尽可能多的假设,但我觉得这项工作是不完整的,除非我可以强制正确使用该方法。

我想做的是强制执行一个规则,以便前两个参数成对使用或使用第三个参数——永远不会同时使用这两个参数。我将其设置为使一个功能适用于尽可能多的情况。虽然我可以编写此函数的不同重载以确保它被正确使用,但我想确保函数定义中没有任何内容可以确保强制使用参数,而不必实际编写同一函数的两个变体.

我回到基础并查看了 C# Programming Guide虽然我找到了一些有用的复习资料,但我没有看到与这个问题相关的任何内容。

有没有办法内联执行此规则,或者创建单独的重载是执行此规则的唯一方法吗?

IQueryable<TEntity> GetByFilter(
string byWhereColumn=null, string byWhereValue = null,
string byWhereString = null,
string byOrder = null,
string byDir = null
);

最佳答案

根据我的评论,我认为你需要使用单独的重载,我理解你不想重复代码,但你只能到目前为止简化它,重载方法、构造函数等在必要时不要重复。

MyMethod (param1, param2){...

MyMethod (param3){...

关于c# - 有没有办法要求两个可选的方法参数成对使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31216402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com