2012-04-05 87 views
3

如何初始化處於空狀態的Uri對象。如何處理空Uri的路徑綁定到圖像源

首先想到的是做這樣的事情

//does not work 
Uri myUri = Uri.Empty 

這其中的確也無法正常工作

Uri myUri = new Uri(string.Empty) 

的原因是我存儲我的形象路徑數據庫,並在萬一沒有定義圖像我有一個空白的數據庫記錄。

我知道有辦法用轉換器來處理這個並返回一個默認的空白圖像烏里萬一IMAGE_PATH是空的...

如何處理綁定到我的視圖模型URI屬性最好?

是轉換器去,你如何處理它,如果你有一個像應當返還許多不同的默認圖像的方式......

回答

0

來處理,這是你可以改變你的數據查詢其他方式例如,如果你正在使用從SQL員工表,那麼你可以寫如下。

select Employeeid, FirstName, LastName, 
case when ImageUrl is null then 'http://www.codeodor.com/images/Empty_set.png' else ImageUrl end as ImageUrl from employees 

這將處理null並返回空圖像的默認url;

希望它適合你。

0

你可以做這樣的事情

Uri uri = null; 
bool someValue = Context.TryGetUri(entity, out uri); 
0

我有同樣的問題,並思考了一會兒後,我相信沒有對System.Uri一個默認的構造,因爲它沒有任何意義。 確實,URI標識資源,因此如果資源不存在或無法找到,我認爲最好的方法是處理null引用而不是空的Uri

在你的代碼,而不必(僞代碼):

if (myUri != Uri.Empty) 
{ 
    // do something 
} 

你必須:

if (myUri != null) 
{ 
    // do something 
} 

在這種情況下,你也可以使用Null-conditional Operator,如果它適合你流程。

相關問題