Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用代码块呈现枚举值_C#_Javascript_Asp.net - Fatal编程技术网

C# 使用代码块呈现枚举值

C# 使用代码块呈现枚举值,c#,javascript,asp.net,C#,Javascript,Asp.net,我希望jsonStr的值为 "{submitOfferResult: 0}" 尽管如此 "{submitOfferResult: OFFER_ACCEPTED}" //javascript var jsonStr = "{submitOfferResult: <%=SUBMIT_OFFER_RESULT.OFFER_ACCEPTED %>}"; //c# public enum SUBMIT_OFFER_RESULT { OFFER_ACCEPTED = 0,

我希望jsonStr的值为

"{submitOfferResult: 0}"
尽管如此

"{submitOfferResult: OFFER_ACCEPTED}"

//javascript
var jsonStr = "{submitOfferResult: <%=SUBMIT_OFFER_RESULT.OFFER_ACCEPTED %>}";

//c#
public enum SUBMIT_OFFER_RESULT
{
    OFFER_ACCEPTED = 0,
    QUALIFYING_OFFER_NOT_MET = 1,
    OFFER_ACCEPTED_NOT_HIGHEST_OFFER = 2,
    OSP_CLOSED = 3,
    AUTO_REJECTED = 4
}
“{submitoferresult:OFFER\u ACCEPTED}”
//javascript
var jsonStr=“{submitoferresult:}”;
//c#
公共枚举提交\提供\结果
{
报价_已接受=0,
符合条件的报价未满足=1,
报价\已接受\未\最高报价=2,
OSP_闭合=3,
自动拒绝=4
}

您需要将枚举强制转换为数字类型:

(int)SUBMIT_OFFER_RESULT.OFFER_ACCEPTED

您需要将枚举强制转换为数字类型:

(int)SUBMIT_OFFER_RESULT.OFFER_ACCEPTED

只需转换为
int

var jsonStr = "{submitOfferResult: <%=(int) SUBMIT_OFFER_RESULT.OFFER_ACCEPTED %>}";
然后:

var jsonStr = "{submitOfferResult: <%=(int) SubmitOfferResult.OfferAccepted %>}";
var jsonStr=“{submitoferresult:}”;

只需转换为
int

var jsonStr = "{submitOfferResult: <%=(int) SUBMIT_OFFER_RESULT.OFFER_ACCEPTED %>}";
然后:

var jsonStr = "{submitOfferResult: <%=(int) SubmitOfferResult.OfferAccepted %>}";
var jsonStr=“{submitoferresult:}”;

.Net公共成员名称(包括枚举值)应为大写。您不能强制转换它吗
(int)提交报价结果。报价被接受
@PhaDaPhunk-如果你阅读了链接的帖子,它说明在问题标题中集成标签名是可以接受的。Net公共成员名(包括枚举值)应该是大写的。你不能直接转换它吗
(int)提交\u OFFER\u结果。OFFER\u ACCEPTED
@PhaDaPhunk-如果你阅读了链接的帖子,它表示在问题标题中集成标记名是可以接受的。谢谢Jon,尽管我不得不强调“.NET命名约定”是你刚刚加入的一个非常广泛的声明。仅仅因为CamelCase现在是首选,并不意味着它被强烈推荐或要求。我的大型代码库有一个约定,可以帮助开发人员识别常量值,这些常量值与下划线/All Caps命名约定DB中的值是一对一的。我不希望我的开发团队中的任何人对您的答案中的特定部分有一个不产生价值的OCD响应,并开始将下划线重命名为camelcase;)@布莱恩:这不是必需的,但强烈推荐。请注意,您选择忽略标准约定意味着您的开发人员将看到“内部”代码和.NET framework代码(以及第三方库,它们很可能符合正常命名约定)的不同名称。这也很可能与你雇佣的任何人都会习惯的情况相反……我不同意乔恩的看法。你说这是强烈推荐的,微软的一篇文章也是,但是这些命名约定与创造商业价值有什么关系呢?我是一名企业家和程序员。程序员是完美主义者,这会妨碍创造价值。是的,下划线让人眼痛。但作为一名企业家,如果我发现某个开发人员在解决方案范围内找到并替换了一些有用的东西,并且也有目的,因为他读了微软的一篇文章,我会再次考虑解雇那个开发人员。相反,我会告诉那个开发人员:…@Brian:好吧,随你的便-但我会继续建议C#开发人员遵循微软推荐的近乎全球的惯例。如果我考虑加入一家公司,我会被一个无视既定惯例的决定所拖累。现在在代码库中更改它可能太晚了,但这并不意味着它是一件好事。(考虑到搜索和替换所花费的时间可能比维护非传统代码所花费的时间要少。)@Brian:然而,我认为您编写的样式对于编写可读代码来说绝对至关重要。无论如何,我认为我们必须就一致性的重要性达成一致意见,包括“您的”代码和您使用的平台之间的一致性。谢谢Jon,尽管我不得不提出。您刚刚在混合中加入的“.NET命名约定”是一个相当广泛的声明。仅仅因为CamelCase现在是首选,并不意味着它被强烈推荐或要求。我的大型代码库有一个约定,可以帮助开发人员识别常量值,这些常量值与下划线/All Caps命名约定DB中的值是一对一的。我不希望我的开发团队中的任何人对您的答案中的特定部分有一个不产生价值的OCD响应,并开始将下划线重命名为camelcase;)@布莱恩:这不是必需的,但强烈推荐。请注意,您选择忽略标准约定意味着您的开发人员将看到“内部”代码和.NET framework代码(以及第三方库,它们很可能符合正常命名约定)的不同名称。这也很可能与你雇佣的任何人都会习惯的情况相反……我不同意乔恩的看法。你说这是强烈推荐的,微软的一篇文章也是,但是这些命名约定与创造商业价值有什么关系呢?我是一名企业家和程序员。程序员是完美主义者,这会妨碍创造价值。是的,下划线让人眼痛。但作为一名企业家,如果我发现某个开发人员在解决方案范围内找到并替换了一些有用的东西,并且也有目的,因为他读了微软的一篇文章,我会再次考虑解雇那个开发人员。相反,我会告诉那个开发人员:…@Brian:好吧,随你的便-但我会继续建议C#开发人员遵循微软推荐的近乎全球的惯例。如果我考虑加入一家公司,我会被一个无视既定惯例的决定所拖累。现在在代码库中更改它可能太晚了,但这并不意味着它是一件好事。(考虑到搜索和替换所花费的时间可能比维护非传统代码所花费的时间要少。)@Brian:然而,我认为您编写的样式对于编写可读代码来说绝对至关重要。无论如何,我认为我们必须就一致性的重要性达成一致,包括“您的”代码和您使用的平台之间的一致性。