2010-08-05 1 views
1

У меня есть приложение, установить с RIA Services, Entity Framework 4 и Silverlight 4. Он устанавливается в стандартной манере, предписанной на MSDN здесь: Walkthrough: Creating a RIA Services SolutionКак я могу получить метод или свойство модели на сервере, созданный в клиенте?

я написал новый метод (или свойство) против одного из объектов сущности, которые находятся на сервере; Я хотел бы, чтобы этот метод (или свойство) также был сгенерирован (автоматически) на клиенте. т.е.

  • У меня есть таблица в моей базе данных под названием Клиента, который имеет два поля: FirstName и LastName
  • (проект ASP.NET - на стороне сервера) EF создал соответствующий частичный класс, называемый протокол, который имеет два свойства: FirstName и LastName
  • (ASP.NET - серверная сторона) В другом файле я использую механизм частичного класса для определения метода (или свойства) для возврата имени FirstName и LastName в строку, например
    • общественная функция ReturnFullName() As String ...
    • общественная собственность FullName() As String ...

Есть ли способ для ReturnFullName() и FullName() в быть сгенерированным на стороне клиента (мое приложение Silverlight)? Или мне нужно реализовать метод/свойство на стороне клиента?

ответ

0

Создайте файл .shared.cs или .shared.vb с частичным классом объекта в нем.

Например:

Partial Public Class Persoon 
    Public Function GetFullName() As String 
     Return Me.Voornaam & " " & Me.Naam 
    End Function 
End Class 


public partial class Persoon 
{ 
    public string GetFullName() 
    { 
     return this.Voornaam + " " + this.Naam; 
    } 
} 

Он будет затем генерировать на стороне клиента, чтобы.

0

Методы объектов вашего домена на стороне сервера не создаются на стороне клиента. (Одной из причин этого является то, что, очевидно, вы могли бы использовать возможности .NET Framework в этих методах, которые недоступны в Silverlight.) Свойства просто копируются с их сигнатурой, используя переменные класса.

Решение этой проблемы имеет частичный файл .cs для вашего класса Customer, где вы определяете эти методы и создаете ссылку на этот файл в проекте Silverlight. Конечно, вы можете использовать библиотеки только в операциях using, которые также доступны в Silverlight.