【解決方法】C# で Python コードを変換する

プログラミングQA


こんにちは、仲間。
この python コードを c# に変換するのを手伝ってくれる人はいますか? URL から取得した json データを読み取る必要があります。
ありがとう

私が試したこと:

Python
def getHeader(token=None, content_type="application/json"):
    headers = {
        "Content-Type": content_type,
        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"
    }
    if token:
        headers.update({"Authorization": token})
    return headers


def getUserData(token):
    try:
        return loads(
            urlopen(Request("https://discordapp.com/api/v6/users/@me", headers=getHeader(token))).read().decode())
    except:
        pass
 
user_data = getUserData(token)
if not user_data:
   continue
username = user_data["username"]
user_id = user_data["id"]
email = user_data.get("email")
phone = user_data.get("phone")

解決策 1

これはコード変換サービスではありません。コードを翻訳するためにここにいるわけではありません。
仮にそうしたとしても、最終的にターゲット言語の「良いコード」にはなりません。それらは非常に異なるフレームワークに基づいており、ある言語で何かを機能させるものが必ずしも別の言語に直接「翻訳」されるとは限りません。
そのため、最終的には非常に貧弱なコードになり、メンテナンスが不可能ではないにしても難しく、適切にアップグレードできず、元のコードが変更された場合に大きな頭痛の種になります。 そして、「箱から出してすぐに」機能しない場合、デバッグするのは悪夢です。
代わりに、ソース コードを新しいアプリの仕様とターゲット言語/フレームワークの仕様として使用し、オリジナルを “テンプレート” として使用してゼロから記述します。 はるかに優れた結果が得られ、長期的には多くの時間を節約できます。

解決策 2

Python と C# の間に直接的な相関関係はないため、変換に時間を無駄にしないでください。 代わりに見てください C# を使用して JSON をシリアル化および逆シリアル化する方法 – .NET | Microsoft Docs[^]、これにより、はるかに迅速に解決策にたどり着くことができます。

解決策 3

コードの書き換え[^]

C# と Json を学んでから試してみてください。

解決策 4

解決…

var wc = 新しい WebClient();
wc.Headers.Add(“Content-Type”, “application/json”);
wc.Headers.Add(HttpRequestHeader.Authorization, match.ToString());
string ResultJSon = wc.DownloadString(“https://discordapp.com/api/v8/users/@me”);
wc.Dispose();

ありがとう、しかし私は自分でそれを解決しました。

コメント

タイトルとURLをコピーしました