原创 windows服務是如何被調用的?

1、服務介紹 操作系統在啓動的時候,會啓動一些不需要用戶交互的進程。這些進程被稱爲服務。當操作系統啓動後它就自動被運行。 2、組成 服務程序、服務控制程序(SCP,service control program)和服務控制管理器(SCM,s

原创 linux上編寫運行 dotnet core api

安裝 Ubuntu        dotnet core 跨平臺已不再是夢,它帶來的意義非凡,比如api接口可以在linux上編寫及部署,也可以在windows上編寫好,打包發佈,然後copy到linux上部署。從官網下載最新版本, 然後裝

原创 vue前端開發那些事——後端接口.net core web api

  紅花還得綠葉陪襯。vue前端開發離不開數據,這數據正來源於請求web api。爲什麼採用.net core web api呢?因爲考慮到跨平臺部署的問題。即使眼下部署到window平臺,那以後也可以部署到Linux下。   .net c

原创 vue前端開發那些事——vue開發遇到的問題

  vue web開發並不是孤立的。它需要衆多插件的配合以及其它js框架的支持。本篇想把vue web開發的一些問題,拿出來討論下。        1、web界面採用哪個UI框架?項目中引用了layui框架。引入框架的好處就是解決界面風格統

原创 vue前端開發那些事——vue組件開發

  vue的學習曲線不是很陡(相比其它框架,如anglarjs),官方文檔比較全面,分爲基礎篇和高級篇。我們剛開始學習的時候,肯定像引用jquery那樣,先把vue的js引進來,然後學習基礎內容。如果僅僅停留在基礎內容,沒有學習vue組件的

原创 mvc那些事

  mvc的特點: 1、無控件,有HtmlHelper類,此類提供了各種生成html控件的方法。如果不能滿足需要,就自定義擴展吧,比如說分頁顯示。HtmlHelper類提供了Partial(加載局部視圖)、Raw(加載html字符串)和A

原创 wpf和winform的那點區別

  一提起winform和wpf有啥不同,可能大部分人都會想到wpf擁有漂亮的界面。wpf中也可以使用winform,大部分情況下,都沒有任何問題,極少的情況下,可能會出現問題。   我們就來看一下: void FloatW

原创 c# http請求ajax頁面

  我們在用Http請求的時候,某些頁面是ajax加載的,所以請求過來的頁面數據不完整。也就是說ajax局部加載數據的地方,我們請求不到,這時候該怎麼辦呢?   WebDriver+phantomjs 這兩個組合在一起使用,可以完成此任務。

原创 layui.js框架的啓發

最近做前臺設計的MM,應用了layui.js框架,是一個可以按模塊加載的js框架,可以實現UI上的一些效果,比如"手風琴摺疊"面板。我看了下源碼,抽出了其框架,應用到公司的項目中,代碼示例如下: 1 /** search.page-v

原创 vue前端開發那些事——前言

如上圖所示,用vue開發一個小型網站所涉及到的知識點。這只是前端部分已經這麼多了。接下來我分解開來說。 1、Node    當我們開發vue項目的時候,首先要安裝Node.js,那麼我們即使當時不理解爲什麼,但是項目完成後,應該抽個空,理

原创 .net remoting和wcf自託管——一個bug引發的警示

一、解決問題,需要深入,並從細節入手,多從代碼找原因,不能認爲代碼是死的,不會出錯: 之前代碼都運行良好,突然某一天,在我電腦上出問題了。出了問題,那就應該找出原因。其實這個問題,本身並不難,好歹給你報出了個錯: 獲取Word遠程代理服務

原创 mvc上傳圖片

  長時間沒有接觸mvc,有點生疏了,這次mvc上傳圖片功能完成後,簡單地總結下。          我圍繞這三塊介紹,首先是前臺form表單: <style> #file_name { width: 400px;

原创 xml與object 之間的ORM

xml映射爲object對象,同時object對象,以xml來表示: public class Tools { private static XmlNodeList SelectNodes(string x

原创 共享內存的疑惑

共享內存的疑惑 上一篇文章中”.net remoting和wcf自託管——一個bug引發的警示”,我稍微提了下c++的共享內存,當時我有一個推測,就是在客戶端讀取共享內存前,誰修改過共享內存。但是我經過了好多次調試,發現只有一次寫內存,其它

原创 c# Http請求之HttpClient

利用HttpClient進行Http請求,基於此,簡單地封裝了下: using System; using System.Collections.Generic; using System.Collections.Specialized;