powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF+Silverlight
13 сообщений из 13, страница 1 из 1
WCF+Silverlight
    #37537513
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, есть проект Silverlight -

Imports System.Windows.Data
Partial Public Class MainPage
Inherits UserControl

Public Sub New()
InitializeComponent()
End Sub

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
Dim ser As New ServiceReference.ServiceClient
AddHandler ser.Get_DataCompleted, AddressOf Emlp_Get
ser.Get_DataAsync()
ser.CloseAsync()
End Sub

Private Sub Emlp_Get(sender As Object, e As ServiceReference.Get_DataCompletedEventArgs)
DataGrid1.ItemsSource = e.Result
End Sub
End Class

и WCF на ASP.Net хосте -

Imports System.ServiceModel
Imports System.ServiceModel.Activation
Imports System.Linq
<ServiceContract(Namespace:="")>
<SilverLightFaultBehavior()>
<AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Allowed)>
Public Class Service

<OperationContract()>
Public Function Get_Data() As DataTable
Dim DS As New DataSet("Test")
Dim DT As DataTable
Using cnn As New SqlClient.SqlConnection("Data Source=.\sqlexpress;Initial Catalog=Northwind;Integrated Security=True")
Try
cnn.Open()
Using DA As New SqlClient.SqlDataAdapter("select*from Employees", cnn)
DA.Fill(DS)
End Using
Catch ex As Exception
Finally
cnn.Close()
End Try
End Using

Return DS.Tables(0)
End Function

'Private Function GetConvert(ByRef DS As DataSet) As Array
' Dim DT As DataTable = DS.Tables(0)
'Dim query_ = (From empl In DT.AsEnumerable() _
'Select empl)
'Return query_.ToArray
'end Function

End Class


Проблема - в том что выходит сообщение -

"Произошла ошибка при попытке создать запрос к URI " http://localhost:7545/Service.svc". Это могло быть вызвано попыткой междоменного доступа к службе без наличия приемлемой междоменной политики или с политикой, непригодной службам SOAP. Может понадобиться связаться с владельцем службы для публикации файла междоменной политики и убедиться в том, что она позволяет отправлять заголовки HTTP, связанные с SOAP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Подробности см. во внутреннем исключении."



как можно его решить? буду Вам признателен за полные ответы и более простое объяснение для того чтобы было понятно.
И правильно я делаю? т.е. проект правильно ли разработан мной
Спасибо!
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37537563
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужен crossdomain.xml, поищите в гугле.
А коротко: можно сделать чтобы ваш WCF выдавал такой файл через http, а в файле были описаны разрешения, самый простой вариант *, т.е всем всё можно
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37537892
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Winnipuhнужен crossdomain.xml, поищите в гугле.
А коротко: можно сделать чтобы ваш WCF выдавал такой файл через http, а в файле были описаны разрешения, самый простой вариант *, т.е всем всё можно


спасибо, хорошо. А куда его нужно будет положить? там где проект?
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538407
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа, не могу разобраться сам, почему выходит - Not found

Silverlight -

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
Partial Public Class MainPage
    Inherits UserControl

    Public Sub New()
        InitializeComponent()
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
        Dim ser As New ServiceReference.ServiceClient

        AddHandler ser.Get_classCompleted, AddressOf Get_

        ser.Get_classAsync()

        ser.CloseAsync()

    End Sub

    Private Sub Get_(sender As Object, e As ServiceReference.Get_classCompletedEventArgs)
        'TextBlock1.DataContext = e.Result

        DataGrid1.DataContext = e.Result


    End Sub
End Class


WCF -

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
Imports System.ServiceModel
Imports System.ServiceModel.Activation
Imports System.Data.SqlClient
<ServiceContract(Namespace:="")>
<SilverLightFaultBehavior>
<AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Allowed)>
Public Class Service

    <OperationContract()>
    Public Sub DoWork()
        ' Add your operation implementation here
    End Sub

    <OperationContract()>
    Public Function Get_class()
        Dim cls_Emlp As New List(Of Empl)
        Dim Empl As New Empl
        Using cnn As New SqlConnection("Data Source=SERVER;Initial Catalog=Northwind;Persist Security Info=True;.......")
            Try
                cnn.Open()
                Using cmd As New SqlCommand("select*from Employees", cnn)
                    Dim Dreader As SqlDataReader
                    Dreader = cmd.ExecuteReader
                    While Dreader.Read
                        Empl._FName = Dreader("LastName")
                        Empl._Lname = Dreader("FirstName")
                        Empl._Title = Dreader("Title")
                        cls_Emlp.Add(Empl)
                    End While
                End Using
            Catch ex As Exception

            Finally
                cnn.Close()
            End Try

        End Using
        Return cls_Emlp
    End Function
End Class

Public Class Empl
    Private FName As String
    Private LName As String
    Private Title As String

    Public Property _FName As String
        Get
            Return FName
        End Get
        Set(value As String)
            FName = value
        End Set
    End Property

    Public Property _Lname As String
        Get
            Return LName
        End Get
        Set(value As String)
            LName = value
        End Set
    End Property

    Public Property _Title As String
        Get
            Return Title
        End Get
        Set(value As String)
            Title = value
        End Set
    End Property
End Class



Уже и так и так пробывал, но почему то всё время выходит - Not Found, не хватает знании, в книгах об этом не пишут ... Подскажите пожайлуйста новичку, Спасибо!
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538415
AlexeiK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VS_User,

вроде уже год тут, а код оформить читабально не можешь.
и вопрос не понятный.
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538465
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexeiKVS_User,

вроде уже год тут, а код оформить читабально не можешь.
и вопрос не понятный.

"код оформить читабально не можешь" - код не тяжелый, чтобы его понять
"вопрос не понятный" - вопрос? почему происходит ошибка - Not Found? когда я нажимаю кнопку на клиенте Silverlight, в сервисе происходит ошибка - Not Found, куда нужно копать, я не могу понять?
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538480
AlexeiK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VS_User,

копать нужно в сторону, правильного изъяснения на русском языке. чтобы тебя понимали.
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538528
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Используйте тег src
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37538625
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
buredМодератор: Используйте тег src

Спасибо, что отформатировали мой код.

DataGrid1.ItemsSource = e.Result - не выходит, так же пишет Not Found, смотрю на код свой вроде как правильный - но это с моей точки зрения.
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37539257
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Настройте подробности ошибки: IncludeExceptionDetailInFaults in WCF service configuration
Наверняка окажется что-то банальное.
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37541747
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую Господа, всё так же по теме взаимодействия Сервисов хочу у вас спросить.

Есть так же проект Silverlight кот. хоститься на ASP.Net страничке, еще есть проект Web Service, где я разместил в корневом каталоге проекта два файлика -

- clientaccesspolicy.xml
- crossdomain.xml

и сделал подключение к сервису из Silverlight проекта, Проблема в том что в Web Service все методы возращают DataSet, DataGrid в Silverlight не подключается к источнику возврата e.result. В прокси классе в автоматическом сгенирированным классе - Reference, создал следующие методы по возращению данных -

Public Function EndGetDataSetTerra(ByVal result As System.IAsyncResult) As ServiceReference1.ArrayOfXElement Implements ServiceReference1.TerraServiceSoap.EndGetDataSetTerra
Dim _args((0) - 1) As Object
Dim _result As ServiceReference1.ArrayOfXElement = CType(MyBase.EndInvoke("GetDataSetTerra", _args, result), ServiceReference1.ArrayOfXElement)
Return _result
End Function


т.е. данные возращаются в виде - ServiceReference1.ArrayOfXElement, но как теперь их преобразовать в нужный формат для подключеня к DataGrid? например в IEnumerable

может есть уже готовые решения по этой проблеме? или все таки придется создавать классы на стороне сервиса и передовать класс ввиде коллекции - List(Of)

Спасибо!
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37541762
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
buredНастройте подробности ошибки: IncludeExceptionDetailInFaults in WCF service configuration
Наверняка окажется что-то банальное.

в web config я сразу выставил - <serviceDebug includeExceptionDetailInFaults="true"/>
но он продолжает выводить - Not Found, может есть еще какие то настройки?
...
Рейтинг: 0 / 0
WCF+Silverlight
    #37541836
VS_User
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VS_UserburedНастройте подробности ошибки: IncludeExceptionDetailInFaults in WCF service configuration
Наверняка окажется что-то банальное.

в web config я сразу выставил - <serviceDebug includeExceptionDetailInFaults="true"/>
но он продолжает выводить - Not Found, может есть еще какие то настройки?

всё получилось, проблема оказалось в том что я не указал - возврат тип данных
дописал - Public Function Get_class() As List(Of Empl), и DataGrid отобразил данные
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF+Silverlight
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]