'컴퓨터 프로그래밍/ASP.NET / Silverlight / MSSQL'에 해당되는 글 3건

  1. 2010.01.01 C#, LINQ IQueryable.Where의 조건을 쉽게 만들기
  2. 2009.12.21 ASP.NET + Silverlight + WCF
  3. 2009.12.21 asp.net / wcf 사용시 .svc 의 처리기매핑이 제대로 안된경우
http://social.msdn.microsoft.com/Forums/en-US/linqprojectgeneral/thread/925b245d-5529-4a64-8cd4-4bc83ee6fe7a/
 public static class PredicateBuilder
{
    public static Expression<Func<T, bool>> Make<T>() { return null; }
    public static Expression<Func<T, bool>> Make<T>(this Expression<Func<T, bool>> predicate)
    {
        return predicate;
    }
    public static Expression<Func<T, bool>> MakePredicate<T>(this IQueryable<T> source)
    {
        return null;
    }
    public static Expression<Func<T, bool>> Or<T>(this Expression<Func<T, bool>> expr, Expression<Func<T, bool>> or)
    {
        if (expr == null) return or;
        var invokedExpr = Expression.Invoke(or, expr.Parameters.Cast<Expression>());
        return Expression.Lambda<Func<T, bool>>(Expression.Or(expr.Body, invokedExpr), expr.Parameters);
    }
    public static Expression<Func<T, bool>> And<T>(this Expression<Func<T, bool>> expr, Expression<Func<T, bool>> and)
    {
        if (expr == null) return and;
        var invokedExpr = Expression.Invoke(and, expr.Parameters.Cast<Expression>());
        return Expression.Lambda<Func<T, bool>>(Expression.And(expr.Body, invokedExpr), expr.Parameters);
    }
}
Posted by orange code
1. 실버라잇에서 접근하는 WCF서비스를 만들때는 반드시 'silverlight 사용 wcf 서비스'로 만든다.

2. 서비스 클래스를 작성한다.

3. web.config에서 <system.serviceModel> 안의 <endpoint address="" binding="basicHttpBinding" contract="DownloadService" /> 부분에서 binding부분이 다르게 되있다면 basicHttpBinding으로 수정한다.
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 가 없으면 추가한다.

4. 실버라잇 프로젝트에서  서비스 레퍼런스 추가하며 앞에 제작한 WCF서비스를 등록한다.

5. 실버라잇 클래스에서 서비스를 이요한다.
EndpointAddress address = new EndpointAddress(new Uri(Application.Current.Host.Source, "../Service.svc"));
client = new ServiceClient(new BasicHttpBinding(), address);
위처럼 client를 가져온후.. client 를 살펴보면, 앞에 작성한 함수들이 비동기버전으로 만들어져 있다.

Posted by orange code

관리자모드로  C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation 로 가서
ServiceModelReg.exe /r /y 를 실행해주면 됩니다.

웹사이트의 처리기매핑 정보가 모두 초기화되니 주의해야합니다..
Posted by orange code