2009-09-25 15 views
2

我正在使用表達式混合3(Silverlight項目+網站選項中的表達式混合)使用silverlight 3網站。如何最好地將類添加到我的silverlight項目+網站的結構中?

我需要爲控件添加一些業務邏輯來消耗(例如,獲取我的量表的拾取)。如果我將代碼添加到類庫中,我不能使用所有的名稱空間和類型 - 我假定是因爲CoreCLR的限制。

如果我將類添加到網站本身,那麼我可以看到所有類型,但我似乎無法找到/調用類,儘管可見性級別和引用都添加和正確(命名空間...是所有正確)。

將邏輯添加到我的項目結構中的建議方式是什麼?如果我添加一個完全獨立的類庫(例如使用Visual Studio),然後爲我的控件提供服務以使用類庫的功能,我可以在框架中看到所有類型/名稱空間嗎?

感謝

+0

你能給一個簡單的樣本,你是什麼意思?我們將代碼放在Silverlight類庫中,我們的Silverlight應用程序項目中的視圖可以很好地訪問它們。您是否已將適當的xmlns語句添加到您的xaml文件中?您可以通過xaml文件頂部的xmlns標籤包含命名空間選項。 – Jeremiah 2009-09-25 22:10:30

+0

啊,我可能會錯過XmlNs語句。之前我有過這個小問題,因爲我看不到我的第三方控件的命名空間。如果這可以在我的開發機器上測試它時修復,我會告訴你。 :) – dotnetdev 2009-09-25 22:38:19

回答

0

你應該看看.NET RIA Services共享服務器和客戶端之間的業務邏輯。請參閱Brad Abrams的this article,他的一系列博客帖子,以及他的來自Mix 2009的video

+0

這會讓我使用整個CLR嗎?我不介意現在應該如何構建我的項目,以便能夠看到整個CLR,只要這是可能的。 – dotnetdev 2009-09-27 16:55:01

1

如果您添加標準庫項目,您將無法在Silverlight內部使用它,如果添加了Silverlight庫項目具有與在Silverlight應用程序本身中發現的相同的限制。

您的邏輯,如果您需要它在Silverlight應用程序中運行客戶端,則必須將自身限制爲Silverlight版本的.NET庫中可用的內容。但是,這仍然代表了對標準.NET庫的重要覆蓋,特別是從客戶端UI應用程序的角度來看。

您無法訪問哪些特定的.NET庫?

+0

我想與諸如性能計數器(來自本地機器),WMI等的東西一起工作。 – dotnetdev 2009-09-27 16:54:10

+0

From with in Silverlight?不會發生,Silverlight運行在「安全沙箱」中,而這些正是我們不希望Silverlight應用程序能夠做到的事情。如果他們能夠最明智的系統管理員將黑名單Silverlight插件。 – AnthonyWJones 2009-09-27 19:21:55