Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > สอบถามเรื่อง asp.net ให้เรียก Wcf service หน่อยค่ะ งมมา 5 วันแล้วT_T



 

สอบถามเรื่อง asp.net ให้เรียก Wcf service หน่อยค่ะ งมมา 5 วันแล้วT_T

 



Topic : 126179



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์




พอดีติดปัญหานี้มาหลายวันแล้วน่ะค่ะ เลยมาขอความช่วยเหลือจาก เพื่อนๆใน Thaicreate หน่อยค่ะ

คือ โจทย์มีแค่ว่า ให้เว็บของเราสามารถสั่งพิมพ์เอกสาร แบบ Online หรือ ผ่าน Network Lan , Wifi ก็ได้ค่ะ

ปกติ เวลาที่เราสร้าง WCF Service แบบ RESTful เราก็จะเรียกผ่าน url (http:......) ก็จะสามารถเรียกได้ใช่ไหมคะ

ที่นี่ก็ลองสร้าง WCF Service สำหรับสั่งพิมพ์เอกสารขึ้นมาตัวนึง ซึ่งตอน Test ที่ Local มันสามารถสั่งพิมพ์ผ่าน Lan หรือ Wifi ได้ค่ะ

แต่พอเราเอาขึ้นไปไว้ที่ Web Server (IIS) มันกลับสั่งพิมพ์ไม่ได้ ก็เลยไปหาข้อมูล ก็พบว่า มันติด Authentication ของ Windows

(อ่านดูจากที่เจอ ก็ประมาณว่า Web ไม่สามารถเรียก Service ที่อยู่บน Local ได้ เพราะเครื่อง Local ไม่ได้อนุญาติให้มันทำงาน)

เพราะงั้นเราก็เลยเปลี่ยนวิธีใหม่ เป็นสร้างโปรแกรม Windows App ขึ้นมาตัวนึง เพื่อมา Run WCF Service (เปิด Service)

แต่เราไม่ค่อยมีประสบการ เรื่องการสร้าง Windows App ก็เลยงงว่า แล้วจะให้ Web มัน Invoke WCF Service ยังไง

ลองใช้วิธี เรียกผ่าน Url แล้ว ไม่ได้ผลเลย

คือ เราต้องประยุกต์ใช้ยังไง หรือมีวิธีไหน ที่เราจะสามารถสั่งพิมพ์ โดยใช้ Web ได้ (ไม่ใช้ Javascript นะคะ เหตุผลที่ไม่ใช้ เพราะเกี่ยวข้องกับ App Android ที่ต้องเรียกใช้งานจากข้างนอก ด้วยน่ะค่ะ)

ตอนนี้ที่เราทำอยู่ก็คือ เอาเครื่อง windows 8.1 มาต่อกับ Printer แล้วก็ลง Driver ให้เรียบร้อย จากนั้น เวลาจะใช้งาน ก็ให้ User เปิดเครื่องนี้ แล้ว Run app windows ตัวนึง ให้มันเปิด WCF Service ไว้น่ะค่ะ (Method อื่นๆ ที่ไม่ใช่การสั่งพิมพ์ สามารถใช้งานได้หมด แต่ Method ที่เป็นสั่งพิมพ์ใช้งานไม่ได้ Method เดียว)

พิมพ์ซะยาวเลย ไม่รู้จะมีใครอ่านไหมT_T

รบกวนพี่ๆใจดี ช่วยหน่อยนะคะ ขอบคุณล่วงหน้าค่ะ



Tag : .NET, Web (ASP.NET), Win (Windows App), WebService, C#







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-01-28 15:34:02 By : mayapopy View : 1627 Reply : 4
 

 

No. 1



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วค่า ขอโทษที่รบกวนน่ะคะ (มันเหมือนเป็นเคล็ดเลย โพสถามทีไร สักพักทำเองได้ทุกที^^)






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-01-28 17:36:34 By : mayapopy
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สรุปเป็นเพราะอะไรครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-01-30 10:55:37 By : mr.win
 

 

No. 3



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์


เท่าที่ลองหาข้อมูลดู น่าจะเป็นจาก สิทธิของ Windows น่ะค่ะ คือ อย่างนี้ค่ะ

สมมติว่า เราเขียน เว็บ สั่งพิมพ์ผ่าน Form Report มันจะเรียกคำสั่ง Preview Dialog ออกมาก่อนใช้ไหมคะ นั่นแหละเป็นเรียกสิทธิ Windows มันก็จะอนุมัติ ให้เลย แต่ถ้าเราให้มันสั่งพิมพ์โดยการเรียกผ่าน Driver หรือ Tcp/ip เลย มันจะไม่ยอมค่ะ ถือว่าเป็นการเรียกผ่านสิทธิ Admin ของ Windows (ไม่ได้ขอสิทธิก่อน)

ดังนั้นเราลองสังเกตดูว่า ถ้าเราเขียน App Windows ขึ้นมาตัวนึง เวลาที่เราเปิด App มันจะเรียก Run as administrator ใช่ไหมคะ (เฉพาะ Windows 8 ขึ้นไป) นั่นแหละค่ะ เป็นการเปิดสิทธิ ให้ App เรากับ Windows สามารถทำงานได้เต็มความสามารถ (ตามโค้ดที่เราเขียน)

อันนี้ที่หาข้อมูลมานะคะ ไม่รู้แปลตรงหรือเปล่า ถ้าผิดยังไง ขอโทษด้วยนะคะ

ที่นี่วิธีแก้ของเราก็คือ (โปรแกรมของเราต้องการสั่งพิมพ์เลย ไม่ผ่าน Form Report) เราทำการ Test ก่อนค่ะ ว่าเป็นที่ สิทธิจริงๆใช่หรือไม่ โดยการเปิด Visual Studio แบบ Click ขวา แล้ว Run as administrator ก็ปรากฏว่าผ่านค่ะ

แล้วพอเราเอาไปไว้ที่ Web Server ปรากฏว่าไม่ผ่าน ติด Access ...... ก็แสดงว่าใช่

วิธีแก้มี 2 วิธี คือไป Set สิทธิให้กับ Web Server (IIS) แต่มันค่อนข้างยุ่งยาก (คือลองแล้วไม่ได้ หรือ เซ็ตไม่เป็นก็ไม่รู้ 555) เราก็ใช้ วิธีที่ 2 คือ เขียน App Console ขึ้นมาตัวนึง (หรือ App Windows ก็ได้) แล้วให้มันไปเปิด Service ให้ค่ะ

วิธีนี้มันจะยุ่งยากหน่อยคือ ทุกครั้งที่เปิดเครื่อง เราต้องมาเปิด App ตัวนี้ก่อน แต่ User บอกว่า ไม่เป็นไร เพราะไม่ได้ยุ่งยากอะไร อ๋อ แล้วก็อย่าลืมเวลาเปิด App บน windows ให้ Run as administrator ด้วย ไม่งั้นมันจะ Error เปิด Service ไม่ผ่านน่ะคะ


วิธีแก้ ก็ประมาณนี้ค่ะ

อาจจะมีวิธีอื่น แต่ไม่รู้ทำยังไง

มาบอกวิธีแก้เฉยๆ เผื่อคนอื่นเป็นเหมือนกัน ก็จะได้เอาแนวทางนี้ไปใช้ได้ ผิดพลาดยังไงขออภัยด้วยนะคะ ขอบคุณค่า


ประวัติการแก้ไข
2017-02-03 09:02:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-03 08:59:52 By : mayapopy
 


 

No. 4



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-03 09:20:27 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง asp.net ให้เรียก Wcf service หน่อยค่ะ งมมา 5 วันแล้วT_T
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่