using System; using System.Collections.Generic; using System.Xml; using System.ServiceModel.Syndication; namespace LJUpper { public static class RSS { public struct RssItem { public string Title { get; set; } public string Text { get; set; } } public static List<RssItem> GetRSS(string _feedUri) { SyndicationFeed syndicationFeed; List<RssItem> resList = new List<RssItem>(); try { using (XmlReader reader = XmlReader.Create(new Uri(_feedUri).AbsoluteUri)) syndicationFeed = SyndicationFeed.Load(reader); string _title = ""; string _text = ""; foreach (SyndicationItem t in syndicationFeed.Items) { if (t.Title == null) _title += t.Title.Text; if (t.Content == null) _text += t.Summary.Text; else _text += (t.Content as TextSyndicationContent).Text; resList.Add(new RssItem() { Title = t.Title.Text, Text = _text }); } } catch { return null; } return resList; } } }
c# read rss
C# Post/Add BlogPost Blogger.com
Download GData.Client https://code.google.com/p/google-gdata/downloads/list
using System; using Google.GData.Client; namespace BloggerAPI { public static class Blogger { /// <summary> /// /// </summary> /// <param name="username"></param> /// <param name="password"></param> /// <param name="UserblogTitle">If null,then will select first user blog</param> public static bool SubmitNewPost(string username, string password, string UserblogTitle) { Service service = new Service("blogger", "blogger-example"); service.Credentials = new GDataCredentials(username, password); try { Uri blogPostUri = SelectUserBlog(service, UserblogTitle); AtomEntry createdEntry = PostNewEntry(service, blogPostUri); return true; } catch { return false; } } static AtomEntry PostNewEntry(Service service, Uri blogPostUri) { AtomEntry createdEntry = null; if (blogPostUri != null) { AtomEntry newPost = new AtomEntry(); newPost.Title.Text = "Marriage!"; newPost.Content = new AtomContent(); newPost.Content.Content = "<div xmlns=\"http://www.w3.org/1999/xhtml\">" + "<p>Mr. Darcy has <em>proposed marriage</em> to me!</p>" + "<p>He is the last man on earth I would ever desire to marry.</p>" + "<p>Whatever shall I do?</p>" + "</div>"; newPost.Content.Type = "xhtml"; createdEntry = service.Insert(blogPostUri, newPost); } return createdEntry; } static Uri SelectUserBlog(Service service, string UserblogTitle) { FeedQuery query = new FeedQuery(); query.Uri = new Uri("http://www.blogger.com/feeds/default/blogs"); AtomFeed feed = service.Query(query); Uri blogPostUri = null; if (feed != null) foreach (AtomEntry entry in feed.Entries) if (UserblogTitle == entry.Title.Text || UserblogTitle == null) { for (int i = 0; i < entry.Links.Count; i++) if (entry.Links[i].Rel.Equals("http://schemas.google.com/g/2005#post")) blogPostUri = new Uri(entry.Links[i].HRef.ToString()); return blogPostUri; } return blogPostUri; } } }
C# Post/Add BlogPost to LiveJournal.com Using
public struct blogInfo { public string title; public string description; } public static class LJ { public static string NewPost(string strUserName, string strPassword, blogInfo bi) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://www.livejournal.com/interface/xmlrpc"); request.Method = "POST"; string command = String.Format( @"<?xml version=""1.0""?><methodCall><methodName>LJ.XMLRPC.postevent</methodName><params><param><value><struct> <member><name>username</name> <value><string>{0}</string></value> </member> <member><name>password</name> <value><string>{1}</string></value> </member> <member><name>event</name> <value><string>{3} </string></value> </member> <member><name>subject</name> <value><string>{2}</string></value> </member> <member><name>lineendings</name> <value><string>pc</string></value> </member> <member><name>year</name> <value><int>"+DateTime.Now.Year.ToString()+@"</int></value> </member> <member><name>mon</name> <value><int>" + DateTime.Now.Month.ToString() + @"</int></value> </member> <member><name>day</name> <value><int>" + DateTime.Now.Day.ToString() + @"</int></value> </member> <member><name>hour</name> <value><int>" + DateTime.Now.Hour.ToString() + @"</int></value> </member> <member><name>min</name> <value><int>" + DateTime.Now.Minute.ToString() + @"</int></value> </member> </struct></value> </param> </params> </methodCall>", strUserName, strPassword, bi.title,bi.description); byte[] bytes = Encoding.ASCII.GetBytes(command); request.ContentLength = bytes.Length; using (var stream = request.GetRequestStream()) stream.Write(bytes, 0, bytes.Length); using (var stream = new StreamReader(request.GetResponse().GetResponseStream())) return stream.ReadToEnd(); } }
MSSQL UPDATE DATETIME
UPDATE [mytablename] set [date_to]=CAST('2013-16-04' AS DATETIME) where [number_rec]='0005814'
C# Локализация Windows 8 приложений
Введение
Шаблоны Windows Phone 8 проектов теперь включают в себя поддержку локализаций приложений. Что такое локализация? Когда вы разрабатываете приложение Windows Phone app, часто вам необходимо это делать сразу для нескольких регионов и соответственно нескольких языков, простыми словами вам необходимо перевести интерфейс или какую то графическую часть.
Давайте создадим Windows Phone 8 приложение и на примере посмотрим как локализовать его.
Первым делом нам вам необходимо выбрать "Windows Phone OS 8.0" платформу когда создаете свое приложение.
Step 1: Создадим новое Windows Phone 8 приложение с целевой платформой версии 8.0.
Как я говорил локализация доступна для восьмой версии платформы; она не поддерживается в версии 7.1, вы можете увидеть различия между версиями на картинке ниже, когда вы создаете Windows Phone 8.0 приложение файл ресурсов находится в папке "Resources" для каждой поддерживаемой локализации и создается класс "LocalizedStrings", также используется привязка с помощью XAML.
По умолчанию запись, относящаяся к классу помощнику "LocalizedStrings" создается в файле App.xaml.
Шаг 2: Теперь давайте привяжем заголовок приложения к свойству из global resource.
<!--TitlePanel contains the name of the application and page title-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock Text="{Binding Path=LocalizedResources.ApplicationTitle}"
Style="{StaticResource PhoneTextNormalStyle}" Margin="12,0"/>
<TextBlock Text="{Binding Path=LocalizedResources.MainPageTitle}" Margin="9,-7,0,0"
Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
Посмотрим на функцию InitializeLanguage():
Шаблоны Windows Phone 8 проектов теперь включают в себя поддержку локализаций приложений. Что такое локализация? Когда вы разрабатываете приложение Windows Phone app, часто вам необходимо это делать сразу для нескольких регионов и соответственно нескольких языков, простыми словами вам необходимо перевести интерфейс или какую то графическую часть.
Давайте создадим Windows Phone 8 приложение и на примере посмотрим как локализовать его.
Первым делом нам вам необходимо выбрать "Windows Phone OS 8.0" платформу когда создаете свое приложение.
Step 1: Создадим новое Windows Phone 8 приложение с целевой платформой версии 8.0.
Как я говорил локализация доступна для восьмой версии платформы; она не поддерживается в версии 7.1, вы можете увидеть различия между версиями на картинке ниже, когда вы создаете Windows Phone 8.0 приложение файл ресурсов находится в папке "Resources" для каждой поддерживаемой локализации и создается класс "LocalizedStrings", также используется привязка с помощью XAML.
По умолчанию запись, относящаяся к классу помощнику "LocalizedStrings" создается в файле App.xaml.
Шаг 2: Теперь давайте привяжем заголовок приложения к свойству из global resource.
<!--TitlePanel contains the name of the application and page title-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock Text="{Binding Path=LocalizedResources.ApplicationTitle}"
Style="{StaticResource PhoneTextNormalStyle}" Margin="12,0"/>
<TextBlock Text="{Binding Path=LocalizedResources.MainPageTitle}" Margin="9,-7,0,0"
Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
Посмотрим на функцию InitializeLanguage():
Шаг 3: Добавим определенную локализацию приложения.
Зайдите в свойства проекта и там вы можете выбрать язык который желаете использовать.
После добавления новых языков создадутся соответствующие файлы ресурсов и добавятся в папку Resources.
Все файлы ресурсов содержат все детали локализации, чтобы их посмотреть нам не обязательно запускать приложение.
Когда вы откроете файл Resources.resx вы увидите ApplicationTitle на разных языках.
Step 4: Протестируем наше приложением просто запустив эмулятор и мы увидим ApplicationTitle на главной странице по умолчанию.
Теперь давайте протестируем нашу новую локализацию.
Для изменения языка используйте следующий порядок действий.
Шаг 1: Нажмите кнопку Start, потом нажмите на иконку стрелку.
Шаг 2: Выберите настройки из списка и нажмите на region & language.
Шаг 3: Выберите язык который вы добавили. Мы добавили немецкий так что выберем его.
Шаг 4: Нажмите чтобы подтвердить изменения и перезагрузите телефон.
Эмулятор изменит настройки и вернет стартовое окно.
Теперь запустите своё приложение и вы увидите переведенный UI.
Эмулятор изменит настройки и вернет стартовое окно.
Теперь запустите своё приложение и вы увидите переведенный UI.
c# Работаем с rdlc
Что нам надо сделать.
Создаем DataTable, на основе него DataSet, задаем имя файла rdlc в ReportViewer и рефрешим его. Вот код:
Какие могут быть проблемы:
1) Просит пермиссион. Решение
2) не мог найти как увеличить Group в Табликсе. Решение надо добавлять строки вне, внутри группы. Картинка для наглядности:
3)Если создан rdl на основе датасета которого у вас нет, т. е. кто то передал вам этот отчет. Можно ли заполнить свой DataSet c такими же полями и передать чтобы всё отображалось корректно. Да можно.
Создаем DataTable, на основе него DataSet, задаем имя файла rdlc в ReportViewer и рефрешим его. Вот код:
reportViewer2.LocalReport.ReportEmbeddedResource = "MyProject.MyReportFolder.MyReport.rdlc"; reportViewer2.LocalReport.SetBasePermissionsForSandboxAppDomain(new System.Security.PermissionSet(System.Security.Permissions.PermissionState.Unrestricted)); SqlConnection conn = new SqlConnection(MyConnString); SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = new SqlCommand("exec MyStoredProc", conn); DataSet ds = new DataSet(); adapter.Fill(ds); reportViewer2.LocalReport.DataSources.Clear(); Microsoft.Reporting.WinForms.ReportDataSource rds = new Microsoft.Reporting.WinForms.ReportDataSource("DataSet1", ds.Tables[0]); reportViewer2.LocalReport.DataSources.Add(rds); reportViewer2.RefreshReport();
Какие могут быть проблемы:
1) Просит пермиссион. Решение
reportViewer2.LocalReport.SetBasePermissionsForSandboxAppDomain(new System.Security.PermissionSet(System.Security.Permissions.PermissionState.Unrestricted));
2) не мог найти как увеличить Group в Табликсе. Решение надо добавлять строки вне, внутри группы. Картинка для наглядности:
3)Если создан rdl на основе датасета которого у вас нет, т. е. кто то передал вам этот отчет. Можно ли заполнить свой DataSet c такими же полями и передать чтобы всё отображалось корректно. Да можно.
c# rdlc fulltrust error
try this code
reportViewer.LocalReport.SetBasePermissionsForSandboxAppDomain(new System.Security.PermissionSet(System.Security.Permissions.PermissionState.Unrestricted));
Subscribe to:
Posts (Atom)