VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจฆเฉ‡ เจจเจพเจฒ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจฌเจฃเจพเจ‰เจฃเจพ

VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจฆเฉ‡ เจจเจพเจฒ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจฌเจฃเจพเจ‰เจฃเจพ

เจนเฉˆเจฒเฉ‹ Khabrovites!

เจ…เฉฑเจœ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจฒเฉ‡เจ– เจฆเฉ‡เจ–เฉ‹เจ—เฉ‡ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเจฟเจ–เจพเจเจ—เจพ เจ•เจฟ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ C# เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เฉฑเจ• เจฌเฉ‹เจŸ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจฐเจฟเจฎเฉ‹เจŸ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ•เจฟเจตเฉ‡เจ‚ เจšเจฒเจพเจ‰เจฃเจพ เจนเฉˆเฅค

เจฒเฉ‡เจ– เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจชเจฟเจ›เฉ‹เจ•เฉœ, เจ‡เฉฑเจ• เจคเจฟเจ†เจฐเฉ€ เจชเฉœเจพเจ…, เจคเจฐเจ• เจฒเจฟเจ–เจฃเจพ เจ…เจคเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจฐเจฟเจฎเฉ‹เจŸ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒ เจ•เจฐเจจเจพ เจธเจผเจพเจฎเจฒ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

เจฎเฉˆเจจเฉ‚เฉฐ เจ‰เจฎเฉ€เจฆ เจนเฉˆ เจ•เจฟ เจ‡เจน เจฒเฉ‡เจ– เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจธเจผเฉเจฐเฉ‚เจ†เจค เจ•เจฐเจจ เจตเจพเจฒเจฟเจ†เจ‚ เจฆเฉ€ เจฎเจฆเจฆ เจ•เจฐเฉ‡เจ—เจพ.

prehistory

เจ‡เจน เจธเจญ เจ‡เฉฑเจ• เจจเฉ€เจ‚เจฆ เจฐเจนเจฟเจค เจชเจคเจเฉœ เจตเจพเจฒเฉ€ เจฐเจพเจค เจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹เจ‡เจ† เจœเฉ‹ เจฎเฉˆเจ‚ เจกเจฟเจธเจ•เจพเจฐเจก เจธเจฐเจตเจฐ 'เจคเฉ‡ เจฌเจฟเจคเจพเจ‡เจ†. เจœเจฆเฉ‹เจ‚ เจคเฉ‹เจ‚ เจฎเฉˆเจ‚ เจนเจพเจฒ เจนเฉ€ เจตเจฟเฉฑเจš เจ‰เจธ เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเจพเจ‚, เจฎเฉˆเจ‚ เจ‰เจธ เจจเฉ‚เฉฐ เจ‰เฉฑเจชเจฐ เจ…เจคเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจ…เจงเจฟเจเจจ เจ•เจฐเจจเจพ เจธเจผเฉเจฐเฉ‚ เจ•เฉ€เจคเจพเฅค เจŸเฉˆเจ•เจธเจŸ เจšเฉˆเจจเจฒ "เจ–เจผเจพเจฒเฉ€ เจ…เจธเจพเจฎเฉ€เจ†เจ‚" เจจเฉ‚เฉฐ เจฒเฉฑเจญเจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจฎเฉˆเจจเฉ‚เฉฐ เจฆเจฟเจฒเจšเจธเจชเฉ€ เจนเฉ‹ เจ—เจˆ, เจ‡เจธเจจเฉ‚เฉฐ เจ–เฉ‹เจฒเฉเจนเจฟเจ†, เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจชเฉ‡เจธเจผเจ•เจธเจผเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฒเฉฑเจญเจฟเจ† เจœเฉ‹ เจฎเฉ‡เจฐเฉ€ เจฆเจฟเจฒเจšเจธเจชเฉ€ เจจเจนเฉ€เจ‚ เจฐเฉฑเจ–เจฆเฉ‡ เจธเจจ, เจ‡เจน เจนเจจ:

"เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฐ (เจฌเฉ‹เจŸ เจกเจฟเจตเฉˆเจฒเจชเจฐ)
เจฒเฉ‹เฉœเจพเจ‚:

  • เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพเจตเจพเจ‚ เจฆเจพ เจ—เจฟเจ†เจจ;
  • เจธเจตเฉˆ-เจธเจฟเฉฑเจ–เจฃ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ.

เจ‡เฉฑเจ›เจพ:

  • เจฆเฉ‚เจœเฉ‡ เจฒเฉ‹เจ•เจพเจ‚ เจฆเฉ‡ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจธเจฎเจเจฃ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ;
  • เจกเจฟเจธเจ•เฉ‹เจฐเจก เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจฆเจพ เจ—เจฟเจ†เจจเฅค

เจ•เฉฐเจฎ:

  • เจฌเฉ‹เจŸ เจตเจฟเจ•เจพเจธ;
  • เจฌเฉ‹เจŸ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ…เจคเฉ‡ เจฐเฉฑเจ–-เจฐเจ–เจพเจ…เฅค

เจคเฉเจนเจพเจกเจพ เจฒเจพเจญ:

  • เจคเฉเจนเจพเจกเฉ€ เจชเจธเฉฐเจฆ เจฆเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจจ เจ…เจคเฉ‡ เจชเฉเจฐเจญเจพเจตเจฟเจค เจ•เจฐเจจ เจฆเจพ เจฎเฉŒเจ•เจพ;
  • เจ‡เฉฑเจ• เจŸเฉ€เจฎ เจตเจฟเฉฑเจš เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเจพ เจคเจœเจฐเจฌเจพ เจนเจพเจธเจฒ เจ•เจฐเจจเจพ;
  • เจฎเฉŒเจœเฉ‚เจฆเจพ เจนเฉเจจเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจจ เจ…เจคเฉ‡ เจธเฉเจงเจพเจฐเจจ เจฆเจพ เจฎเฉŒเจ•เจพ.


เจ‡เจน เจคเฉเจฐเฉฐเจค เจฎเฉˆเจจเฉ‚เฉฐ เจฆเจฟเจฒเจšเจธเจชเฉ€ เจธเฉ€. เจนเจพเจ‚, เจ‰เจนเจจเจพเจ‚ เจจเฉ‡ เจ‡เจธ เจ•เฉฐเจฎ เจฒเจˆ เจญเฉเจ—เจคเจพเจจ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ, เจชเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‡ เจคเฉเจนเจพเจกเฉ‡ เจคเฉ‹เจ‚ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐเฉ€ เจฆเฉ€ เจฎเฉฐเจ— เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€, เจ…เจคเฉ‡ เจ‡เจน เจชเฉ‹เจฐเจŸเจซเฉ‹เจฒเฉ€เจ“ เจตเจฟเฉฑเจš เจฒเฉ‹เฉœ เจคเฉ‹เจ‚ เจตเฉฑเจง เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจ‡เจธ เจฒเจˆ, เจฎเฉˆเจ‚ เจธเจฐเจตเจฐ เจเจกเจฎเจฟเจจ เจจเฉ‚เฉฐ เจฒเจฟเจ–เจฟเจ†, เจ…เจคเฉ‡ เจ‰เจธเจจเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฌเฉ‹เจŸ เจฒเจฟเจ–เจฃ เจฒเจˆ เจ•เจฟเจนเจพ เจœเฉ‹ เจŸเฉˆเจ‚เจ•เจพเจ‚ เจฆเฉ‡ เจตเจฟเจธเจผเจต เจตเจฟเฉฑเจš เจ–เจฟเจกเจพเจฐเฉ€ เจฆเฉ‡ เจ…เฉฐเจ•เฉœเฉ‡ เจฆเจฟเจ–เจพเจเจ—เจพ.

เจคเจฟเจ†เจฐเฉ€ เจชเฉœเจพเจ…

VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจฆเฉ‡ เจจเจพเจฒ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจฌเจฃเจพเจ‰เจฃเจพ
เจกเจฟเจธเจ•เฉเจฐเฉ‹เจก
เจ‡เจธ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเจพ เจฌเฉ‹เจŸ เจฒเจฟเจ–เจฃเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ€เจ, เจธเจพเจจเฉ‚เฉฐ เจ‡เจธเจจเฉ‚เฉฐ เจกเจฟเจธเจ•เจพเจฐเจก เจฒเจˆ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœ เจนเฉˆ:

  1. เจกเจฟเจธเจ•เจพเจฐเจก เจ–เจพเจคเฉ‡ เจตเจฟเฉฑเจš เจฒเฉŒเจ—เจ‡เจจ เจ•เจฐเฉ‹ เจฒเจฟเฉฐเจ•
  2. "เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ" เจŸเฉˆเจฌ เจตเจฟเฉฑเจš, "เจจเจตเฉ€เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ" เจฌเจŸเจจ 'เจคเฉ‡ เจ•เจฒเจฟเฉฑเจ• เจ•เจฐเฉ‹ เจ…เจคเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจจเจพเจฎ เจฆเจฟเจ“
  3. เจ†เจชเจฃเฉ‡ เจฌเฉ‹เจŸ เจตเจฟเฉฑเจš เจฒเฉŒเจ—เจ‡เจจ เจ•เจฐเจ•เฉ‡ เจ…เจคเฉ‡ "เจธเฉˆเจŸเจฟเฉฐเจ—เจœเจผ" เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš "เจฌเฉ‹เจŸ" เจŸเฉˆเจฌ เจจเฉ‚เฉฐ เจฒเฉฑเจญ เจ•เฉ‡ เจ‡เฉฑเจ• เจฌเฉ‹เจŸ เจŸเฉ‹เจ•เจจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹
  4. เจŸเฉ‹เจ•เจจ เจจเฉ‚เฉฐ เจ•เจฟเจคเฉ‡ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจ•เจฐเฉ‹

เจตเจฐเจ—เจฎเจฟเฉฐเจ—

เจจเจพเจฒ เจนเฉ€, เจคเฉเจนเจพเจจเฉ‚เฉฐ Wargaming API เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ Wargaming เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจ‡เฉฑเจฅเฉ‡ เจตเฉ€, เจธเจญ เจ•เฉเจ เจธเจงเจพเจฐเจจ เจนเฉˆ:

  1. เจ†เจชเจฃเฉ‡ เจตเจพเจฐเจ—เฉ‡เจฎเจฟเฉฐเจ— เจ–เจพเจคเฉ‡ เจตเจฟเฉฑเจš เจฒเฉŒเจ—เจ‡เจจ เจ•เจฐเฉ‹ เจ‡เจธ เจฒเจฟเฉฐเจ• เจฆเฉเจ†เจฐเจพ
  2. เจ…เจธเฉ€เจ‚ "เจฎเฉ‡เจฐเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚" 'เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเจพ เจจเจพเจฎ เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹เจ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ€ เจ•เจฟเจธเจฎ เจฆเฉ€ เจšเฉ‹เจฃ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, "เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจผเจพเจฎเจฒ เจ•เจฐเฉ‹" เจฌเจŸเจจ 'เจคเฉ‡ เจ•เจฒเจฟเฉฑเจ• เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  3. เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ ID เจจเฉ‚เฉฐ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ

เจธเจพเจซเจŸเจตเฉ‡เจ…เจฐ

เจšเฉ‹เจฃ เจฆเฉ€ เจ†เจœเจผเจพเจฆเฉ€ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจนเฉˆเฅค เจ•เฉ‹เจˆ เจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ•เฉ‹เจˆ เจฐเจพเจˆเจกเจฐ, เจ•เฉ‹เจˆ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจผเจ•เจคเฉ€เจธเจผเจพเจฒเฉ€ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจตเจฟเจฎ เจตเจฟเฉฑเจš เจ•เฉ‹เจก เจฒเจฟเจ–เจฆเจพ เจนเฉˆ (เจ†เจ–เจผเจฐเจ•เจพเจฐ, เจ…เจธเจฒ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฐ เจธเจฟเจฐเจซ เจ•เฉ€เจฌเฉ‹เจฐเจก เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจ เฉ€เจ•?) เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจกเจฟเจธเจ•เจพเจฐเจก API เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจจเจพ เจ•เจฐเจจ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจ…เจฃเจ…เจงเจฟเจ•เจพเจฐเจค C# เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ โ€œDSharpPlusโ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจœเจพเจ‚ เจคเจพเจ‚ NuGet เจคเฉ‹เจ‚, เจœเจพเจ‚ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจคเฉ‹เจ‚ เจธเจฐเฉ‹เจคเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจชเจฃเฉ‡ เจ†เจช เจฌเจฃเจพ เจ•เฉ‡ เจธเจฅเจพเจชเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจ‰เจนเจจเจพเจ‚ เจฒเจˆ เจœเฉ‹ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเฉ‡ เจœเจพเจ‚ เจญเฉเฉฑเจฒ เจ—เจ เจนเจจ เจ•เจฟ NuGet เจคเฉ‹เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเจจเจพ เจนเฉˆเฅคเจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจฒเจˆ เจจเจฟเจฐเจฆเฉ‡เจธเจผ

  1. เจŸเฉˆเจฌ 'เจคเฉ‡ เจœเจพเจ“ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ - NuGet เจชเฉˆเจ•เฉ‡เจœ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจ•เจฐเฉ‹;
  2. เจธเจฎเฉ€เจ–เจฟเจ† 'เจคเฉ‡ เจ•เจฒเจฟเฉฑเจ• เจ•เจฐเฉ‹ เจ…เจคเฉ‡ เจ–เฉ‹เจœ เจ–เฉ‡เจคเจฐ เจตเจฟเฉฑเจš เจฆเจฐเจœ เจ•เจฐเฉ‹ โ€œDSharpPlusโ€;
  3. เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจšเฉเจฃเฉ‹ เจ…เจคเฉ‡ เจธเจฅเจพเจชเจฟเจค เจ•เจฐเฉ‹;
  4. เจฒเจพเจญ!

เจคเจฟเจ†เจฐเฉ€ เจฆเจพ เจชเฉœเจพเจ… เจ–เจคเจฎ เจนเฉ‹ เจ—เจฟเจ† เจนเฉˆ, เจคเฉเจธเฉ€เจ‚ เจฌเฉ‹เจŸ เจฒเจฟเจ–เจฃ เจฒเจˆ เจ…เฉฑเจ—เฉ‡ เจตเจง เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจคเจฐเจ• เจฒเจฟเจ–เจฃเจพ

VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจฆเฉ‡ เจจเจพเจฒ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจฌเจฃเจพเจ‰เจฃเจพ

เจ…เจธเฉ€เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ‡ เจชเฉ‚เจฐเฉ‡ เจคเจฐเจ• 'เจคเฉ‡ เจตเจฟเจšเจพเจฐ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡, เจฎเฉˆเจ‚ เจธเจฟเจฐเจซ เจ‡เจน เจฆเจฟเจ–เจพเจตเจพเจ‚เจ—เจพ เจ•เจฟ เจฌเฉ‹เจŸ เจฆเฉเจ†เจฐเจพ เจธเฉเจจเฉ‡เจนเจฟเจ†เจ‚ เจฆเฉ‡ เจฐเฉเจ•เจพเจตเจŸ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจตเจพเจฐเจ—เฉ‡เจฎเจฟเฉฐเจ— API เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจนเฉˆ.

เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจธเจŸเฉˆเจŸเจฟเจ• เจ…เจธเจฟเฉฐเจ• เจŸเจพเจธเจ• เจฎเฉ‡เจจเจŸเจพเจธเจ•(เจธเจŸเฉเจฐเจฟเฉฐเจ—[] เจ†เจฐเจ—เจธ) เจฆเฉเจ†เจฐเจพ เจนเฉเฉฐเจฆเจพ เจนเฉˆ;
เจ‡เจธ เจซเฉฐเจ•เจธเจผเจจ เจจเฉ‚เฉฐ เจ•เจพเจฒ เจ•เจฐเจจ เจฒเจˆ, เจฎเฉเฉฑเจ– เจตเจฟเฉฑเจš เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฐเจœเจฟเจธเจŸเจฐ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ

MainTask(args).ConfigureAwait(false).GetAwaiter().GetResult();

เจ…เฉฑเจ—เฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ†เจชเจฃเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:

discord = new DiscordClient(new DiscordConfiguration
{
    Token = token,
    TokenType = TokenType.Bot,
    UseInternalLogHandler = true,
    LogLevel = LogLevel.Debug
});

เจœเจฟเฉฑเจฅเฉ‡ เจŸเฉ‹เจ•เจจ เจคเฉเจนเจพเจกเฉ‡ เจฌเฉ‹เจŸ เจฆเจพ เจŸเฉ‹เจ•เจจ เจนเฉˆเฅค
เจซเจฟเจฐ, เจฒเจพเจ‚เจฌเจกเจพ เจฆเฉเจ†เจฐเจพ, เจ…เจธเฉ€เจ‚ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€เจ†เจ‚ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจฒเจฟเจ–เจฆเฉ‡ เจนเจพเจ‚ เจœเฉ‹ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ:

discord.MessageCreated += async e =>
{
    string message = e.Message.Content;
    if (message.StartsWith("&"))
    {
        await e.Message.RespondAsync(โ€œHello, โ€ + e.Author.Username);
    }
};

เจœเจฟเฉฑเจฅเฉ‡ e.Author.Username เจจเฉ‚เฉฐ เจฏเฉ‚เจœเจผเจฐ เจฆเจพ เจ‰เจชเจจเจพเจฎ เจฎเจฟเจฒ เจฐเจฟเจนเจพ เจนเฉˆเฅค

เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ & เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹เจฃ เจตเจพเจฒเจพ เจ•เฉ‹เจˆ เจธเฉเจจเฉ‡เจนเจพ เจญเฉ‡เจœเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจฌเฉ‹เจŸ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจจเจฎเจธเจ•เจพเจฐ เจ•เจฐเฉ‡เจ—เจพเฅค

เจ‡เจธ เจซเฉฐเจ•เจธเจผเจจ เจฆเฉ‡ เจ…เฉฐเจค เจตเจฟเฉฑเจš, เจคเฉเจนเจพเจจเฉ‚เฉฐ await discord.ConnectAsync(); เจ…เจคเฉ‡ Task.Delay(-1) เจฆเฉ€ เจ‰เจกเฉ€เจ• เจ•เจฐเฉ‹;

เจ‡เจน เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฎเฉเฉฑเจ– เจฅเฉเจฐเฉˆเจก เจจเฉ‚เฉฐ เจฒเจ เจฌเจฟเจจเจพเจ‚ เจฌเฉˆเจ•เจ—เฉเจฐเจพเจ‰เจ‚เจก เจตเจฟเฉฑเจš เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเฉ‡เจตเฉ‡เจ—เจพเฅค

เจนเฉเจฃ เจธเจพเจจเฉ‚เฉฐ Wargaming API เจจเจพเจฒ เจจเจœเจฟเฉฑเจ เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจ‡เฉฑเจฅเฉ‡ เจธเจญ เจ•เฉเจ เจธเจงเจพเจฐเจจ เจนเฉˆ - CURL เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฒเจฟเจ–เฉ‹, เจ‡เฉฑเจ• JSON เจธเจคเจฐ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจœเจตเจพเจฌ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹, เจ‰เฉฑเจฅเฉ‹เจ‚ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจกเฉ‡เจŸเจพ เจ•เฉฑเจขเฉ‹ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ 'เจคเฉ‡ เจนเฉ‡เจฐเจพเจซเฉ‡เจฐเฉ€ เจ•เจฐเฉ‹เฅค

WargamingAPI เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเฉ€ เจ‡เฉฑเจ• เจ‰เจฆเจพเจนเจฐเจฃ

public Player FindPlayer(string searchNickname)
        {
            //https://api.worldoftanks.ru/wot/account/list/?application_id=y0ur_a@@_id_h3r3search=nickname
            urlRequest = resourceMan.GetString("url_find_player") + appID + "&search=" + searchNickname;
            Player player = null;
            string resultResponse = GetResponse(urlRequest);
            dynamic parsed = JsonConvert.DeserializeObject(resultResponse);

            string status = parsed.status;
            if (status == "ok")
            {
                int count = parsed.meta.count;
                if (count > 0)
                {
                    player = new Player
                    {
                        Nickname = parsed.data[0].nickname,
                        Id = parsed.data[0].account_id
                    };
                }
                else
                {
                    throw new PlayerNotFound("ะ˜ะณั€ะพะบ ะฝะต ะฝะฐะนะดะตะฝ");
                }
            }
            else
            {
                string error = parsed.error.message;
                if (error == "NOT_ENOUGH_SEARCH_LENGTH")
                {
                    throw new PlayerNotFound("ะœะธะฝะธะผัƒะผ ั‚ั€ะธ ัะธะผะฒะพะปะฐ ั‚ั€ะตะฑัƒะตั‚ัั");
                }
                else if (error == "INVALID_SEARCH")
                {
                    throw new PlayerNotFound("ะะตะฒะตั€ะฝั‹ะน ะฟะพะธัะบ");
                }
                else if (error == "SEARCH_NOT_SPECIFIED")
                {
                    throw new PlayerNotFound("ะŸัƒัั‚ะพะน ะฝะธะบะฝะตะนะผ");
                }
                else
                {
                    throw new Exception("Something went wrong.");
                }
            }

            return player;
        }

เจงเจฟเจ†เจจ เจฆเจฟเจ“! เจธเจพเจฐเฉ‡ เจŸเฉ‹เจ•เจจเจพเจ‚ เจ…เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ†เจˆเจกเฉ€ เจจเฉ‚เฉฐ เจธเจชเจธเจผเจŸ เจŸเฉˆเจ•เจธเจŸ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฆเฉ€ เจธเจ–เจคเฉ€ เจจเจพเจฒ เจธเจฟเจซเจพเจฐเจธเจผ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€! เจ˜เฉฑเจŸ เจคเฉ‹เจ‚ เจ˜เฉฑเจŸ, เจกเจฟเจธเจ•เจพเจฐเจก เจ…เจœเจฟเจนเฉ‡ เจŸเฉ‹เจ•เจจเจพเจ‚ 'เจคเฉ‡ เจชเจพเจฌเฉฐเจฆเฉ€ เจฒเจ—เจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจ‰เจน เจตเจฟเจธเจผเจตเจตเจฟเจ†เจชเฉ€ เจจเฉˆเจŸเจตเจฐเจ• เจตเจฟเฉฑเจš เจฆเจพเจ–เจฒ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ, เจ…เจคเฉ‡ เจตเฉฑเจง เจคเฉ‹เจ‚ เจตเฉฑเจง, เจนเจฎเจฒเจพเจตเจฐเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจฌเฉ‹เจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค

VPS - เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเจพเจ‡เจจเจพเจค เจ•เจฐเฉ‹

VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจฆเฉ‡ เจจเจพเจฒ .NET เจ•เฉ‹เจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจฌเจฃเจพเจ‰เจฃเจพ

เจ‡เฉฑเจ• เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจฌเฉ‹เจŸ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐ เจฒเฉˆเจ‚เจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ 'เจคเฉ‡ เจนเฉ‹เจธเจŸ เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ เจœเฉ‹ เจฒเจ—เจพเจคเจพเจฐ 24/7 เจšเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉˆ. เจ‡เจน เจ‡เจธ เจคเฉฑเจฅ เจฆเฉ‡ เจ•เจพเจฐเจจ เจนเฉˆ เจ•เจฟ เจœเจฆเฉ‹เจ‚ เจคเฉเจนเจพเจกเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจšเฉฑเจฒ เจฐเจนเฉ€ เจนเฉˆ, เจฌเฉ‹เจŸ เจตเฉ€ เจšเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉˆ. เจœเจฟเจตเฉ‡เจ‚ เจนเฉ€ เจคเฉเจธเฉ€เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจฌเฉฐเจฆ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเฉเจนเจพเจกเจพ เจฌเฉ‹เจŸ เจตเฉ€ เจธเฉŒเจ‚ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ VPS เจธเจฐเจตเจฐ เจ‡เจธ เจธเฉฐเจธเจพเจฐ เจตเจฟเฉฑเจš เจฎเฉŒเจœเฉ‚เจฆ เจนเจจ, เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจ…เจคเฉ‡ เจฒเฉ€เจจเจ•เจธ เจฆเฉ‹เจตเจพเจ‚ เจ‰เฉฑเจคเฉ‡, เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš, เจฒเฉ€เจจเจ•เจธ เจ‰เฉฑเจคเฉ‡ เจนเฉ‹เจธเจŸ เจ•เจฐเจจเจพ เจฌเจนเฉเจค เจธเจธเจคเจพ เจนเฉˆเฅค

เจกเจฟเจธเจ•เจพเจฐเจก เจธเจฐเจตเจฐ 'เจคเฉ‡, เจฎเฉˆเจจเฉ‚เฉฐ vscale.io เจฆเฉ€ เจธเจฒเจพเจน เจฆเจฟเฉฑเจคเฉ€ เจ—เจˆ เจธเฉ€, เจ…เจคเฉ‡ เจฎเฉˆเจ‚ เจคเฉเจฐเฉฐเจค เจ‡เจธ 'เจคเฉ‡ เจ‰เจฌเฉฐเจŸเฉ‚' เจคเฉ‡ เจ‡เฉฑเจ• เจตเจฐเจšเฉเจ…เจฒ เจธเจฐเจตเจฐ เจฌเจฃเจพเจ‡เจ† เจ…เจคเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจ…เจชเจฒเฉ‹เจก เจ•เฉ€เจคเจพเฅค เจฎเฉˆเจ‚ เจ‡เจน เจตเจฐเจฃเจจ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เจพ เจ•เจฟ เจ‡เจน เจธเจพเจˆเจŸ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจชเจฐ เจธเจฟเฉฑเจงเฉ‡ เจฌเฉ‹เจŸ เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจคเฉ‡ เจœเจพเจตเจพเจ‚เจ—เฉ€.

เจธเจญ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ‡ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจจเฉ‚เฉฐ เจธเจฅเจพเจชเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ เจœเฉ‹ .NET เจ•เฉ‹เจฐ เจตเจฟเฉฑเจš เจฒเจฟเจ–เฉ‡ เจธเจพเจกเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจšเจฒเจพเจเจ—เจพเฅค เจ‡เจน เจ•เจฟเจตเฉ‡เจ‚ เจ•เจฐเจจเจพ เจนเฉˆ เจ‡เฉฑเจฅเฉ‡ เจตเจฐเจฃเจจ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ.

เจ…เฉฑเจ—เฉ‡, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• Git เจธเฉ‡เจตเจพ เจตเจฟเฉฑเจš เจ…เฉฑเจชเจฒเฉ‹เจก เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ GitHub เจ…เจคเฉ‡ เจนเฉ‹เจฐ, เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ VPS เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ•เจฒเฉ‹เจจ เจ•เจฐเฉ‹, เจœเจพเจ‚ เจ†เจชเจฃเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจนเฉ‹เจฐ เจคเจฐเฉ€เจ•เจฟเจ†เจ‚ เจจเจพเจฒ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเฉ‹เฅค เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจจเฉ‹เจŸ เจ•เจฐเฉ‹ เจ•เจฟ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• เจ•เฉฐเจธเฉ‹เจฒ เจนเฉ‹เจตเฉ‡เจ—เจพ, เจ•เฉ‹เจˆ GUI เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจคเฉ‡ เจธเจพเจฐเฉ‡.

เจ†เจชเจฃเฉ‡ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธเจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจ‡เจธเจฆเฉ‡ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœ เจนเฉˆ:

  • เจธเจพเจฐเฉ€เจ†เจ‚ เจจเจฟเจฐเจญเจฐเจคเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจนเจพเจฒ เจ•เจฐเฉ‹: dotnet เจฐเฉ€เจธเจŸเฉ‹เจฐ
  • เจฌเจฟเจฒเจก เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ: dotnet build name_project.sln -c เจฐเฉ€เจฒเฉ€เจœเจผ
  • เจฌเจฟเจฒเจŸ เจกเฉ€เจเจฒเจเจฒ เจคเฉ‡ เจœเจพเจ“;
  • dotnet name_of_file.dll

เจตเจงเจพเจˆเจ†เจ‚! เจคเฉเจนเจพเจกเจพ เจฌเฉ‹เจŸ เจšเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจฌเฉ‹เจŸ, เจฌเจฆเจ•เจฟเจธเจฎเจคเฉ€ เจจเจพเจฒ, เจ•เฉฐเจธเฉ‹เจฒ เจ‰เฉฑเจคเฉ‡ เจ•เจฌเจœเจผเจพ เจ•เจฐ เจฒเฉˆเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ VPS เจธเจฐเจตเจฐ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจจเจฟเจ•เจฒเจฃเจพ เจ†เจธเจพเจจ เจจเจนเฉ€เจ‚ เจนเฉˆ. เจจเจพเจฒ เจนเฉ€, เจธเจฐเจตเจฐ เจฐเฉ€เจธเจŸเจพเจฐเจŸ เจนเฉ‹เจฃ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉ‹เจŸ เจจเฉ‚เฉฐ เจจเจตเฉ‡เจ‚ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจเจพ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจธเจฅเจฟเจคเฉ€ เจฆเฉ‡ เจฌเจพเจนเจฐ เจคเจฐเฉ€เจ•เฉ‡ เจฆเฉ‡ เจ‡เฉฑเจ• เจœเฉ‹เฉœเฉ‡ เจจเฉ‚เฉฐ เจนเจจ. เจ‡เจน เจธเจพเจฐเฉ‡ เจธเจฐเจตเจฐ เจธเจŸเจพเจฐเจŸเจ…เจช เจคเฉ‡ เจฒเจพเจ‚เจš เจจเจพเจฒ เจธเจฌเฉฐเจงเจค เจนเจจ:

  • เจฐเจจ เจธเจ•เฉเจฐเจฟเจชเจŸ เจจเฉ‚เฉฐ /etc/init.d เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจ•เจฐเฉ‹
  • เจ‡เฉฑเจ• เจธเฉ‡เจตเจพ เจฌเจฃเจพเจ“ เจœเฉ‹ เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€ เจธเจฎเฉ‡เจ‚ เจšเฉฑเจฒเฉ‡เจ—เฉ€เฅค

เจฎเฉˆเจ‚ เจ‰เจนเจจเจพเจ‚ 'เจคเฉ‡ เจตเจฟเจธเจฅเจพเจฐ เจจเจพเจฒ เจตเจฟเจšเจพเจฐ เจ•เจฐเจจ เจฆเจพ เจฌเจฟเฉฐเจฆเฉ‚ เจจเจนเฉ€เจ‚ เจฆเฉ‡เจ–เจฆเจพ, เจนเจฐ เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจ‡เฉฐเจŸเจฐเจจเฉˆเจŸ 'เจคเฉ‡ เจ•เจพเจซเจผเฉ€ เจตเจฟเจธเจฅเจพเจฐ เจจเจพเจฒ เจฆเฉฑเจธเจฟเจ† เจ—เจฟเจ† เจนเฉˆ.

เจธเจฟเฉฑเจŸเจพ

เจฎเฉˆเจจเฉ‚เฉฐ เจ–เฉเจธเจผเฉ€ เจนเฉˆ เจ•เจฟ เจฎเฉˆเจ‚ เจ‡เจธ เจ…เจธเจพเจˆเจจเจฎเฉˆเจ‚เจŸ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฟเจ†เฅค เจ‡เจน เจฎเฉ‡เจฐเจพ เจชเจนเจฟเจฒเจพ เจฌเฉ‹เจŸ เจตเจฟเจ•เจพเจธ เจ…เจจเฉเจญเจต เจธเฉ€, เจ…เจคเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจ–เฉเจธเจผเฉ€ เจนเฉˆ เจ•เจฟ เจฎเฉˆเจจเฉ‚เฉฐ C# เจตเจฟเฉฑเจš เจจเจตเจพเจ‚ เจ—เจฟเจ†เจจ เจฎเจฟเจฒเจฟเจ† เจนเฉˆ, เจ…เจคเฉ‡ เจฒเฉ€เจจเจ•เจธ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจเจพเฅค

เจกเจฟเจธเจ•เจพเจฐเจก เจธเจฐเจตเจฐ เจจเจพเจฒ เจฒเจฟเฉฐเจ• เจ•เจฐเฉ‹เฅค เจ‰เจจเฉเจนเจพเจ‚ เจฒเจˆ เจœเฉ‹ เจตเจพเจฐ เจ—เฉ‡เจฎเจฟเฉฐเจ— เจ—เฉ‡เจฎเจพเจ‚ เจ–เฉ‡เจกเจฆเฉ‡ เจนเจจเฅค
เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเจพเจฒ เจฒเจฟเฉฐเจ• เจ•เจฐเฉ‹ เจœเจฟเฉฑเจฅเฉ‡ เจกเจฟเจธเจ•เจพเจฐเจก เจฌเฉ‹เจŸ เจธเจฅเจฟเจค เจนเฉˆเฅค
DSharpPlus เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเจพเจฒ เจฒเจฟเฉฐเจ• เจ•เจฐเฉ‹เฅค
เจคเฉเจนเจพเจกเฉ‡ เจงเจฟเจ†เจจ เจฒเจˆ เจงเฉฐเจจเจตเจพเจฆ!

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹