2014-01-12 69 views
0

我可能無法解釋這一點,所以很抱歉如果有任何混淆。轉換對象(DGV值)

我在這裏使用此.dll:https://github.com/trydis/FIFA-Ultimate-Team-2014-Toolkit#initialization

有一個在它的一類叫做國家,我使用此:https://github.com/trydis/FIFA-Ultimate-Team-2014-Toolkit/blob/master/UltimateTeam.Toolkit/Parameters/Nation.cs

我需要使用國之一在一組則params的,但我無法讓它工作。以下是我正在使用的代碼。

   Level leveltest = (Level)Enum.Parse(typeof(Level), dataGridView1.Rows[0].Cells[1].Value.ToString()); 
       Nation nationtest = dataGridView1.Rows[0].Cells[2].Value; 
       var searchParameters = new PlayerSearchParameters 
       { 
        Level = leveltest, 
        Nation = Convert.ToUInt32(nationtest), 
       } 

我得到錯誤「無法隱式轉換類型‘對象’到‘UltimateTeam.Toolkit.Parameters.Nation’。一個顯式轉換存在(是否缺少強制轉換?)」

我得到了帕拉姆級別的工作,但我不能讓國家工作。

所有的幫助真的很感謝。

謝謝。

+0

你要投它到'Nation' –

回答

0

由於單元格中的值是來自於基類SearchParameterBase<uint>DescriptionNation的班,你可以按照如下獲得與指定Description一個Nation的一個實例:

Nation nationtest = Nation.GetAll().FirstOrDefault(n => n.Description == dataGridView1.Rows[0].Cells[2].Value); 
+0

我做到了,得到了未處理的異常「{」無法投射'System.String'類型的對象來鍵入'UltimateTeam.Toolkit.Parameters.Nation'。「}」 – user3159838

+0

因此,你的數據似乎是「民族」對象的序列化表示。什麼是字符串值? –

+0

在DGV?這是「英格蘭」沒有引號。 – user3159838