דלג לתוכן הראשי
תרגום
דף זה תורגם באופן אוטומטי על-ידי שירות תרגום המכונות של Microsoft מתרגם. למד עוד

בלוג מתרגם של מיקרוסופט

יצירת יישום אינטרנט עם תרגום המסופק על-ידי Microsoft מתרגם.

יצירת יישום אינטרנט עם תרגום המסופק על-ידי Microsoft מתרגם.

בהדרכה זו, תלמד כיצד ליצור יישום אינטרנט המשתמש ב-API של מתרגם Microsoft כדי לתרגם טקסט שהמשתמש קלט. תבנה את העמוד באמצעות ASP.NET ובחינם Visual Studio Express 2012 לאינטרנט. אם כבר יש לך התקנה של Visual Studio, עדיין תוכל לעקוב אחר ההדרכה, פשוט דלג על שלב 1.

לפני שתתחיל, יהיה עליך להירשם עבור ה-API של מתרגם Microsoft בתכלת. יש מספר הצעות שונות, כולל אחד חינם, ואתה יכול לראות כיצד להירשם לשירות חינם, לרשום את האפליקציה שלך ולקבל את האישורים שלך כאן:

http://blogs.msdn.com/b/translation/p/gettingstarted1.aspx

מזהה הלקוח וסוד הלקוח שאתה יוצר כאן ישמשו בשלב 4, לכן יש לשים לב אליהם.

. צעד ראשון מקבל Visual Studio Express 2012 לאינטרנט.

הדרך הטובה ביותר להתחיל היא לבקר http://www.asp.net/downloads ובחר את הלחצן ' התקן עכשיו ' בסעיף ' קבל הכל עם התקנה אחת פשוטה '.

clip_image001

זה יהיה להשיק את פלטפורמת האינטרנט מתקין אשר יתקין Visual Studio, ASP.NET, MVC ושורה שלמה של דברים טובים אחרים, כי אתה יכול להשתמש כדי לבנות אתרי אינטרנט.

. שלב 2 צור את יישום האינטרנט

הפעל את Visual Studio ומתפריט קובץ, בחר באפשרות ' פרוייקט חדש '. תראה תיבת דו-שיח המכילה רשימה של פרוייקטים שונים הזמינים עבורך לבניית אתרי אינטרנט. בחר ב-' Visual C' משמאל ולאחר מכן בחר ברשימה ' יישום טפסי אינטרנט ASP.NET '.

clip_image003

תן ליישום האינטרנט שם, כגון ' מתרגם ', ולחץ על ' אישור '. Visual Studio תיצור כעת כל מה שאתה צריך כדי לבנות ולהפעיל את יישום האינטרנט. הקש F5 כדי לבנות ולהפעיל את היישום ואתה תראה משהו כזה:

clip_image005

 

 

. צעד שלישי יצירת ממשק משתמש לתרגום טקסט

בסעיף זה, תוסיף פקדים לאתר המאפשרים למשתמשי הקצה להקליד חלק מהטקסט, ללחוץ על לחצן תרגום ולאחר מכן לראות את התרגום של הטקסט שהם הוזנו. סוג זה של פונקציונליות שימושי לאינטראקציה עם הלקוחות שלך כשאתה מדבר שפות שונות, לדוגמה.

מתוך סייר הפתרונות, אתר את העמוד ' אודות. aspx '. פתח אותו במעצב, ותראה משהו כזה:

clip_image016

Delete the 3 <p> tags that say ‘Use this area to provide additional information’, and replace with some controls to provide a basic translation UI, like this:

clip_image018

לנוחיותך, הנה המקור עבור דף זה:

<%@ Page Title="About" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="About.aspx.cs" Inherits="Translator.About" %>

<asp: תוכן לרוץ באמצעות= "שרת" זהה= "תוכן גוף" מקום מקום הולדראיד= "תוכן מאשר">
    <מיכל בלאניק כיתה= "כותרת">
        <h1><%: כותרת %>.</h1>
        <h2>דף תיאור האפליקציה שלך.</h2>
    </מיכל בלאניק>

    <מאמר>
        הזן את הטקסט שברצונך לתרגם:<br />
        <asp: תיבת טקסט זהה= "TextBox1" לרוץ באמצעות= "שרת" גובה= "מפרק 25px" רוחב= "342px"></asp: תיבת טקסט>
        <asp: לחצן זהה= "Button1" לרוץ באמצעות= "שרת" גובה= "37px" OnClick= "Button1_Click" טקסט= "תרגם" />
        <br />
        הטקסט המתורגם שלך הוא:<br />
        <asp: ליטרלי זהה= "Literal1" לרוץ באמצעות= "שרת"></asp: ליטרלי>
    </מאמר>

    <צידה>
        <h3>מחוץ לכותר</h3>
        <p>        
            השתמש באזור זה כדי לספק מידע נוסף.
        </p>
        <ul>
            <לי><קצת לרוץ באמצעות= "שרת" href="~/">בית</קצת></לי>
            <לי><קצת לרוץ באמצעות= "שרת" href= "~/Pl.sb">על</קצת></לי>
            <לי><קצת לרוץ באמצעות= "שרת" href= "~/Plp.sb">צור קשר</קצת></לי>
        </ul>
    </צידה>
</asp: תוכן>

שים לב כי במעצב אתה צריך ללחוץ פעמיים על הכפתור כדי ליצור את "Button1_Click" קוד. כתוב קוד זה בשלב הבא.

. שלב 4 כתיבת קוד לתרגום טקסט משתמש

בסעיף הקודם, יצרת ממשק משתמש בסיסי לתרגום טקסט. זה יאפשר למשתמש לכתוב קצת טקסט, ולחץ על כפתור. בסעיף זה, תכתוב את הקוד מאחורי לחצן זה אשר יתרגם את הטקסט הרצוי של המשתמש לספרדית, ויעבד אותו בדף.

ראשית, יהיה עליך להוסיף מחלקה חדשה לפתרון שלך. . קרא לזה מיכל כהן ולתת לו את הקוד הבא:

באמצעות מערכת
באמצעות System. אוספים. כלליים;
באמצעות System. Linq;
באמצעות System. Web;

שמות מתרגם
{
    ציבור כיתה אדמקסטוקן
    {
        ציבור חרוזת access_token { get; set; }
        ציבור חרוזת token_type { get; set; }
        ציבור חרוזת expires_in { get; set; }
        ציבור חרוזת scope { get; set; }
    }
}

 

שים לב שהשמות של 4 המחרוזות צריכים להתאים למצב שנמצא כאן בדיוק, או שתקבל שגיאות בקוד מאוחר יותר.

לאחר מכן, בתוך Visual Studio, בסייר הפתרונות, לחץ לחיצה ימנית על התיקיה ' הפניות ' ובחר ' הוסף הפניה '. השתמש בתיבת דו-שיח זו שלהלן כדי להוסיף הפניות ל

– מערכת. Runtime. עריכה בסידרה

– System. XML. Linq

– מערכת. סרוויס דגם. אינטרנט

בראש הקוד שלך עבור About.aspx.cs, תראה מספר משפטים ' באמצעות '. הוסף את השימוש ב-System. Xml. Linq לאלה, כך שייראה כך:

באמצעות מערכת
באמצעות System. אוספים. כלליים;
באמצעות System. Linq;
באמצעות System. Web;
באמצעות System. Web. UI;
באמצעות System. Web. UI. WebControls;
באמצעות System. Xml. Linq;

שמות מתרגם
{
    ציבור חלקי כיתה About : Page
    {
        מוגן ריק Page_Load (אובייקט שולח, אירועיםארגס e)
        {

}

        מוגן ריק Button1_Click (אובייקט שולח, אירועיםארגס e)
        {

}
    }
}

 

תראה שהקוד Button1_Click ריק. הוסף את הקוד הבא אליו. קוד זה יקבל את אסימון הגישה שלך עבור שירות המתרגם, תוך שימוש במזהה הלקוח ובסוד הלקוח שיצרת קודם לכן.

חרוזת קלינטיד = "<Your ClientID>";
חרוזת לקוחוהסוד = "<Your Client Secret>";
מחרוזת מיתרים = 
      "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13";
בקשת מחרוזות פרטים = 
      חרוזת. תבנית"grant_type=client_credentials&client_id={0}&client_secret={1} &scope=http://api.microsofttranslator.com", HttpUtility. UrlEncode (קלינטיד), HttpUtility. UrlEncode (לקוחוהסודיים));

מערכת .Net. webrequest וברייקווסט = מערכת .Net. ברייקווסט יצירת (strTranslatorAccessURI);
webRequest. ContentType = "יישום/x-www-טופס מקודד";
שיטת webRequest = פוסט;
בית[] בתים = מערכת. טקסט. קידוד. ASCII. GetBytes (בקשת פרטים);
אורך = בתים של webRequest. אורך
באמצעות (System.IO.Stream outputStream = webRequest.GetRequestStream())
{
  outputStream.Write(bytes, 0, bytes.Length);
}

System.Net.WebResponse webResponse = webRequest.GetResponse();
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = חדש 
    מערכת. זמן ריצה. עריכה בסידרה. שיטת עורך הסידרה של Json (כזו(מחנה העתיקות);

טוקן האדיקן = (אדמקססטוקן) עורך הסדרות. ReadObject (תגובה לאינטרנט);

חרוזת כותרת עליונה = נושא + token. access_token;

 

קוד זה יוצר פוסט לשירות שוק הנתונים, מעביר את תעודת הזהות והסוד ומקבל בחזרה אובייקט JSON. לאחר מכן באפשרותך לביטול עריכה בסידרה של האובייקט לתוך מקור. לאחר מכן תוכל להפיק את הaccess_token מזה.

אסימון זה נוסף למחרוזת, ומופיע בקידומת "נושא" (אל תשכח את הרווח) כדי ליצור ערך כותרת שיישלח לשירות המתרגם.

כדי להתקשר לשירות המתרגם באמצעות כותרת עליונה זו ולהעביר את הטקסט של המשתמש, עליך להשתמש בקוד בצורה הזאת:

חרוזת txtToTranslate = TextBox1. Text;
חרוזת uri = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text =" + מערכת. Web. HttpUtility לקוד (txtToTranslate) + "& מ = en & כדי = es";
מערכת .Net. וברייקווסט = מערכת .Net. ברייקווסט יצירה (uri);
. העברה. כותרות עליונות. הוסף (אישור, headerValue);

תגובה מערכת .Net. WebResponse = null;
תגובה = העברה. הגברה ();
זרם מערכת. IO. Stream = תגובה. שרוספונזסטרים ();
מערכת. Text. coding קידוד = מערכת. Text. קידוד. GetEncoding ("utf-8");

מערכת. IO מערכות העברה זרם = חדש מערכת. IO (זרם, קידוד);
System. Xml. XmlDocument סמך xTranslation = חדש System. Xml. XmlDocument סמך ();
xTranslation. LoadXml (זרם העברה. ReadToEnd ());

Literal1. Text = xTranslation. אינטקסט;

 

 

תיבת הטקסט נקראה ' TextBox1 ' כך שהטקסט שהקלדת המשתמש יכול פשוט להיות נגזר מזה. לאחר מכן נוצר URI למתרגם שירות HTTP, והטקסט עצמו מקודד ומתווסף ל-URI.

שים לב כי השפה ' en ' משמש עבור ' מ ' (כלומר, אני מניח שאתה מקליד באנגלית), ו ' es ' משמש ' ל ' (כלומר, זה יהיה לתרגם לספרדית). הרשימה המלאה של קודים אלה עבור השפות הנתמכות נמצאת כאן: http://msdn.microsoft.com/en-us/library/hh456380.aspx

שירות המתרגם מחזיר XML, כך שהקוד קורא לשירות, מקבל את התגובה כ-XML ולאחר מכן מפענח אותו לטקסט. לאחר מכן הוא יטען את התוצאה לליטרלי שיצרת ב אודות. aspx המכונה Literal1.

אתה יכול לראות את זה בפעולה כאן:

clip_image019

! וזהו זה כעת השתמשת ב-API של מתרגם Microsoft כדי להוסיף תרגום מכונה ליישום ASP.NET.

סיכום

בהדרכה זו, ראית כיצד לבנות יישום אינטרנט באמצעות ASP.NET וכיצד להוסיף תרגום מכונה אליו. השתמשת ברכיב Widget מתוך Microsoft מתרגם כדי לספק את התרגום של תוכן העמוד שלך, וראית כיצד לתכנת את ה-API של מתרגם Microsoft באמצעות Cכדי לתרגם תוכן שנוצר על-ידי המשתמש.