Domanda

Ho questi metodi in un modulo Web ASP.NET:

public partial class currencies : System.Web.UI.Page
{

protected void Page_Load(object sender, EventArgs e)
{

}

public class Rate
{
    public string to { get; set; }
    public string from { get; set; }
    public double rate { get; set; }
}

double ConvertedAmount { get; set; }

public void Convert(object sender, EventArgs e)
{
    DateTime theDate = DateTime.UtcNow;
    string todayDateTime = theDate.ToString("f");
    double amount = 0d;
    if (double.TryParse(txtAmount.Text.Trim(), out amount))
    {
        string url = string.Format("http://rate-exchange.appspot.com/currency?from={0}&to={1}", ddlFrom.SelectedItem.Value, ddlTo.SelectedItem.Value);
        WebClient client = new WebClient();
        string rates = client.DownloadString(url);
        Rate rate = new JavaScriptSerializer().Deserialize<Rate>(rates);
        ConvertedAmount = amount * rate.rate;
        Label1.Text = ddlFrom.SelectedItem.Value + ": " + amount;
        Label2.Text = ddlTo.SelectedItem.Value + ": " + ConvertedAmount;
        Label3.Text = "Rate as at " + todayDateTime + " is:";
        Label4.Text = " 1 " + ddlFrom.SelectedItem.Value + " = " + rate.rate + " " + ddlTo.SelectedItem.Value;

    }
    else
    {
        ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Invalid amount value.');", true);
    }
}


protected void Button1_Click(object sender, EventArgs e)
{   
    Clipboard.SetText(ConvertedAmount.ToString());
}
}
.

Quando faccio clic sul pulsante 1 per copiare il risultato negli Appunti ottengo l'eccezione: il filettatura corrente deve essere impostato su modalità SINGLE THREK APPARTAMENTO (STA) prima di chiamare OLE.È la prima volta che mi occupo di qualcosa del genere. Quello che dovrei fare per risolvere questo problema?Grazie per aver aiutato.

È stato utile?

Soluzione

come msdn stati,

.

La classe Appunti può essere utilizzata solo nei thread impostati su un filo singolo APARTAMENTO (STA).

Impostazione Sta in ASP.NET non dovrebbe essere richiesto.Ma sei sicuro di voler operare su Appunti sul lato server?Capisci che funzionerà su Server Appunti, non è quello del cliente?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top